J2EE期末练习题 下载本文

根据MVC模式设计完成一个简单的网络交友系统,该系统包括2个功能,一个是网友注册,第二是网友查询。系统只有一个表 friend,其表结构设计如下:

name sex score varchar(10) char(3) Int 网友姓名 (是主键) 网友性别 网友年龄 其中控制器采用Servlet实现,视图采用JSP实现,模型采用Java bean实现。系统要求,在网友注册信息页中填入网友信息后提交,返回正确录入网友信息页Insertsucess.jsp,错误则进error.jsp。网友查询则是用户在“research.jsp”页面中输入网友姓名,返回查询结果页面“showFriend.jsp”,所有请求都提交给中心控制器CenterController.java,中心控制器再根据请求的不同分发给具体处理请求的servlet完成对应处理后调用视图页面显示。各程序功能见下表描述。

数据库名:netfriend, 表名:friend。数据库驱动为:org.git.mm.mysql.Driver 数据库服务器名:SQLSERVER,用户名:sa,密码:root。 各程序的文件名字及功能说明: 文件名 register.jsp 说明 网友注册页面,含一个名为action的隐含域,值为”register”表明是注册页面,同时能输入网友的姓名,性别和年龄 registersucess.jsp Research.jsp 仅仅显示“注册成功”,本题中不需要实现 网友查询页面,含一个名为action的隐含域,值为”reseach”表明是查询页面,同时能输入网友姓名,进行查询。 ShowFriend.jsp CenterController.java 显示查询的网友情况结果,显示ArrayList中的内容 中心控制器,通过请求的不同进行跳转。即根据获取名字为”action”的值,实现相应的跳转。 Dbop.java 一个servlet程序,功能实现连接数据库,执行sql查询和sql更新三个函数。 Insert.java 一个servlet程序,完成插入操作后,跳转到Insertsucess.jsp Research.java 一个servlet程序,完成查询操作,根据查询结果生成一个ArrayList,然后转showFriend.jsp Friend.java 一个JavaBean程序,表示一条记录信息,包含 name, sex, age三个属性及相应属性的设置和获取方法。

1、 补充完整register.jsp文件:

Hello World!

<%--

下面这条语句是表单的名为action的隐含域,由value给出值,由中心控制器此识别相应的提交页面。

--%>

2、 补充完整research.jsp。该文件根据输入网友的姓名,然后提交给中心控制器进

行查询。

3、 补充完整centerController.java, 如果action=’register’ 则转

research.java;如果 action=’insert’则转Insert.java。 protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType(\

PrintWriter out = response.getWriter();

String action = request.getParameter(\ System.out.println(action); if (action!=null)

{ // 一个横杠不表示只有一条语句

} }

4、 补充完整dbop.java,该文件是完成数据库操作、执行sql查询和sql更新的

javaBean。

public class dbop {

private Connection conn = null; private Statement stmt = null;

public void connectDB() throws Exception {

Class.forName(“org.gjt.mm.mysql.Driver”); Conn =

java.sql.DriverManager.getConnection(“jdbc:mysql://localhost:3306/sampl

e”,”root”,”123”);

}

public Connection getConnection() throws Exception { }

public ResultSet getResultSet(String sql) throws SQLException {

}

public void DataUpdate(String sql) throws SQLException {

}

public void close() throws SQLException { } }

5、 下面是文件insert.java,该servlet读取客户端的输入,调用dbop.java完成

插入数据库操作,请补充完整。

protected void processRequest(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType(\ PrintWriter out = response.getWriter();

return conn;