servlet jsp jdbc实验Word格式.docx

上传人:b****4 文档编号:18024055 上传时间:2022-12-13 格式:DOCX 页数:29 大小:24.54KB
下载 相关 举报
servlet jsp jdbc实验Word格式.docx_第1页
第1页 / 共29页
servlet jsp jdbc实验Word格式.docx_第2页
第2页 / 共29页
servlet jsp jdbc实验Word格式.docx_第3页
第3页 / 共29页
servlet jsp jdbc实验Word格式.docx_第4页
第4页 / 共29页
servlet jsp jdbc实验Word格式.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

servlet jsp jdbc实验Word格式.docx

《servlet jsp jdbc实验Word格式.docx》由会员分享,可在线阅读,更多相关《servlet jsp jdbc实验Word格式.docx(29页珍藏版)》请在冰豆网上搜索。

servlet jsp jdbc实验Word格式.docx

importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.sql.Statement;

publicfinalclassconnectionFactory{

privatestaticStringurl="

jdbc:

mysql:

//127.0.0.1/jdbc"

;

privatestaticStringuser="

root"

privatestaticStringpassword="

123"

privateconnectionFactory(){

}

static{

try{

Class.forName("

org.gjt.mm.mysql.Driver"

);

}catch(ClassNotFoundExceptione){

thrownewExceptionInInitializerError(e);

}

publicstaticConnectiongetConnection()throwsSQLException{

Connectionconn=DriverManager.getConnection(url,user,password);

conn.setAutoCommit(false);

returnconn;

//returnDriverManager.getConnection(url,user,password);

publicstaticvoidfree(ResultSetrs,Statementst,Connectionconn){

if(rs!

=null)

rs.close();

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

if(st!

st.close();

}catch(SQLExceptione){

e.printStackTrace();

}finally{

try{

if(conn!

conn.close();

}catch(SQLExceptione){

e.printStackTrace();

}

}

}

输出对象:

publicclassconnectionTest{

publicstaticvoidmain(String[]args)throwsSQLException{

//TODOAuto-generatedmethodstub

Connectionconn=null;

conn=connectionFactory.getConnection();

System.out.println(conn);

conn.close();

//TODOAuto-generatedcatchblock

 

2、请将成绩表中所有学号是’B030110’的成绩加10分

staticvoidupdate()throwsSQLException{

Statementst=null;

ResultSetrs=null;

//建立连接

conn=connectionFactory.getConnection();

//创建语句

st=conn.createStatement();

Stringsql="

update成绩表setscore=score+10whereid=B030110"

//执行语句

st.executeUpdate(sql);

}finally{

connectionFactory.free(rs,st,conn);

3、总结创建一个基本的JDBC应用的过程

1、先在数据库的建立连接,并建立你所需要的数据。

2、通过JDBC连接数据库,并导入相应的connectionjar包。

3、配置所需文件,建立连接对象,释放对象。

4、完成对数据库的操作。

二、

1、请通过preparedstatement在学生表中输入两个学生信息

packagecn.itcast.jdbc.student.Impl;

importjava.sql.PreparedStatement;

importcn.itcast.jdbc.connectionFactory;

importcn.itcast.jdbc.dao.DaoException;

importcn.itcast.jdbc.student.student;

importcn.itcast.jdbc.student.studentDao;

publicclassstudentDaoImplimplementsstudentDao{

@Override

publicvoidupdate(studentstu){

studentstu1=newstudent();

studentstu2=newstudent();

PreparedStatementps=null,ps1=null;

insertinto学生表(sno,sname,sex)values(?

?

)"

ps=conn.prepareStatement(sql);

ps1=conn.prepareStatement(sql);

ps.setInt(1,stu1.getSno());

ps.setString(2,stu1.getSname());

ps.setString(3,stu1.getSex());

ps.executeUpdate();

ps1.setInt(1,stu2.getSno());

ps1.setString(2,stu2.getSname());

ps1.setString(3,stu2.getSex());

ps1.executeUpdate();

mit();

}catch(SQLExceptione){

thrownewDaoException(e.getMessage(),e);

//e.printStackTrace();

connectionFactory.free(rs,ps,conn);

2、请显示学生表中所有学生的信息

staticvoidread()throwsSQLException{

rs=st.executeQuery("

select*from学生表"

while(rs.next()){

System.out.println(rs.getObject("

sno"

)+"

\t"

+rs.getObject("

sname"

sex"

三、

1、请实现一个接口dealDao的实现类dealDaoImpl

该接口定义如下:

interfacedealDao{

Booleanfind(useruser)//查找指定的用户是否存在

Booleansave(useruser)//保存指定的用户信息

IntgetSum(useruser)//得到某人账户中的资金

Booleanchange(useruser,intsum)//给user转指定的钱

User类{Stringname;

//账户名

Stringpwd;

//密码

intmoney;

//金额

账户表(账户名char(10),密码varchar(20),金额int)

packagecn.itcast.jdbc.user.impl;

importcn.itcast.jdbc.user.User;

importcn.itcast.jdbc.user.dealDao;

publicclassdealDaoImplimplementsdealDao{

Connectionconn=null;

PreparedStatementps1=null;

PreparedStatementps2=null;

PreparedStatementps3=null;

PreparedStatementps4=null;

ResultSetrs=null;

publicBooleanchange(Useruser,intsum)throwsSQLException{

Stringsql="

update用户表setaccount=account+?

wherename=?

"

if(find(user)==true){

Stringname=user.getName();

ps1=conn.prepareStatement(sql);

ps1.setInt(1,sum);

ps1.setNString(2,name);

returnps1.execute();

elsereturnfalse;

publicBooleanfind(Useruser)throwsSQLException{

select*from用户表wherename=?

Stringname=null;

name=user.getName();

ps2=conn.prepareStatement(sql);

ps2.setNString(1,name);

rs=ps2.executeQuery();

if(rs.next()==true)

returntrue;

else

returnfalse;

publicintgetSum(Useruser)throwsSQLException{

intaccount;

ps3=conn.prepareStatement(sql);

ps3.setNString(1,user.getName());

rs=ps3.executeQuery();

rs.next();

account=rs.getInt(3);

returnaccount;

elsereturn-1;

publicBooleansave(Useruser)throwsSQLException{

insertinto用户表values(?

Stringname=null,password=null;

intaccount;

ps4=conn.prepareStatement(sql);

password=user.getName();

account=user.getMoney();

ps4.setNString(1,name);

ps4.setNString(2,password);

ps4.setInt(3,account);

ps4.execute();

returntrue;

实验报告(三)

Servlet应用

1、掌握servlet的配置方法

2、掌握web服务器的配置过程

3、掌握HttpServlet类的用法

4、掌握session等对象的用法

5、掌握请求转发功能的应用

6、掌握SerlvetConfig上下文的用法

Servlet配置、servlet设计、会话管理、请求流转、上下文应用

1、请建立一个servlet类用于显示当前的系统时间。

写出它的url配置写法

package.servlet;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclassDateextendsHttpServlet{

publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)

throwsServletException,IOException{

this.doPost(request,response);

publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)

response.setContentType("

text/html"

PrintWriterout=response.getWriter();

out.println("

<

!

DOCTYPEHTMLPUBLIC\"

-//W3C//DTDHTML4.01Transitional//EN\"

>

HTML>

<

HEAD>

TITLE>

AServlet<

/TITLE>

/HEAD>

BODY>

out.print(newjava.util.Date());

/BODY>

/HTML>

out.flush();

out.close();

}}

servlet>

servlet-name>

Date<

/servlet-name>

servlet-class>

.servlet.Date<

/servlet-class>

/servlet>

servlet-mapping>

url-pattern>

/servlet/Date<

/url-pattern>

/servlet-mapping>

1、请输入用户名和密码,如果用户名和密码是“zhangsan”和”123456”,则进入一个欢迎界面,否则要求用户重新输入。

涉及的方法:

(1)response.sendRedirect("

login.htm"

(2)request.getRequestDispatcher("

welcome.htm"

).forward(request,response);

(3)HttpSessionsession=request.getSession();

session.setAttribute("

islogin"

true);

(4)booleanisLogin=session.getAttribute("

%@pagelanguage="

java"

import="

java.util.*"

pageEncoding="

UTF-8"

%>

%

Stringpath=request.getContextPath();

StringbasePath=request.getScheme()+"

:

//"

+request.getServerName()+"

+request.getServerPort()+path+"

/"

DOCTYPEHTMLPUBLIC"

-//W3C//DTDHTML4.01Transitional//EN"

html>

head>

basehref="

%=basePath%>

title>

MyJSP'

submit.jsp'

startingpage<

/title>

/head>

body>

%request.setCharacterEncoding("

response.setCharacterEncoding("

utf-8"

Stringname=request.getParameter("

name"

Stringpwd=request.getParameter("

passwrd"

//PrintWriterout=response.getWriter();

if("

张三"

.equals(name)&

&

123456"

.equals(pwd)){

%>

HttpSessionsession=request.getSession();

session.setAttribute("

request.getRequestDispatcher("

welcome.jsp"

<

%}else{%>

response.sendRedirect("

%}%>

/body>

/html>

2、领会多用户并发访问的机制,请建立一个HttpServlet——“servletUsers”类,在该类的成员代码如下:

publicclassserveltUsersextendsHttpServlet{

privateIntegerx=1;

publicvoiddoGet(HttpServletRequestrequest,HttpSe

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动物植物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1