软工概论-课堂练习:添加信息

题目要求:

软工概论-课堂练习:添加信息_第1张图片软工概论-课堂练习:添加信息_第2张图片

 

设计思路:

对于该设计,主要使用两个jsp页面编码,一个java文件,其余java文件是定义相关变量与方法的,具体可参考下述代码。对于该设计首先使用jsp进行编码设计,设计出基本的框架,对“保存”按钮类型定义成submit,进行页面的跳转,跳转到接收上述文本框输入的内容jsp页面,在这个页面接收文字信息,并且使用这些文字信息(即将要添加到数据库的)进行数据库的插入操作,首先按照要求判断是否符合题目要求(注意使用Str.equals()而不是用==),具体判断用到了字符串取字符的函数.charAt(i)。具体方法如下:

软工概论-课堂练习:添加信息_第3张图片

 最后进行数据库的链接操作即可。数据库和表格在后台提前创建好即可。

软工概论-课堂练习:添加信息_第4张图片

源码:

第一部分:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>





注册页面

REGISTER




























课程名称 :

任课教师 :

上课地点 :





 

 

 第二部分:

<%@page import="com.jaovo.msg.Util.UserException"%>
<%@page import="com.jaovo.msg.dao.UserDaoImpl"%>
<%@page import="com.jaovo.msg.model.User"%>
<%@ page import="javax.swing.*" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>


<%
//接收客户端传递过来的参数
request.setCharacterEncoding("UTF-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
String nickname = request.getParameter("nickname");
System.out.println(username+password);
//String phone = request.getParameter("phone");
//String email = request.getParameter("email");
if(username == null || "".equals(username.trim())){
{request.setAttribute("error", "用户名不能为空");} //下面的一句话是若姓名为空则显示并跳转到addinput 也可以跳转到本界面
%>

<%
}
User user = new User();
user.setUsername(username);
user.setPassword(password);
user.setNickname(nickname);
//user.setPhone(phone);
//user.setEmail(email);
int i=8;
UserDaoImpl userDao = new UserDaoImpl();

try{
/*char[] a=new char[11];
int sum=0;
for(int f=0;f<11;f++)
{
a[f]=phone.charAt(f);
if(a[i]>=48&&a[i]<=57) ++sum;
}
if(phone.length()!=11||a[0]!=49){*/
int m=0;int n=0;
if((user.getNickname().charAt(0)=='一'||user.getNickname().charAt(0)=='二'||user.getNickname().charAt(0)=='三'||user.getNickname().charAt(0)=='基')&&user.getNickname().charAt(1)=='教')
n=1;
if((user.getPassword().equals("王建民") || user.getPassword().equals("刘立嘉") ||
user.getPassword().equals("刘丹") ||user.getPassword().equals("王辉") ||
user.getPassword().equals("杨子光"))&&n==1)
{
i=userDao.add(user);
if(i==4)
%>

保存成功!!

<%
}
else
{
%>
输入有误!

<%

}
%>

继续添加

进行登录
<%
}catch(UserException e){
%>

发生错误 : <%=e.getMessage() %>


<%
}
%>

 

第三部分:

package com.jaovo.msg.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;


import com.jaovo.msg.Util.DBUtil;
import com.jaovo.msg.Util.UserException;
import com.jaovo.msg.model.User;

import sun.net.www.content.text.plain;

public class UserDaoImpl implements IUserDao {

@Override
public int add(User user) {
//获得链接对象
Connection connection = DBUtil.getConnection();
//准备sql语句
String sql = "select count(*) from t_user1 where password = ?";
//创建语句传输对象
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
try {
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, user.getPassword());//给问好赋值 第一个问号
//接收结果集
resultSet = preparedStatement.executeQuery();
//遍历结果集
while(resultSet.next())
{
if (resultSet.getInt(1) > 0) {
return 0;//("用户已存在") ;
}
}
String sql1 = "insert into t_user1(username,password,nickname) value(?,?,?)";
preparedStatement = connection.prepareStatement(sql1);
System.out.println("libusa");
preparedStatement.setString(1, user.getUsername());
preparedStatement.setString(2, user.getPassword());
preparedStatement.setString(3, user.getNickname());
preparedStatement.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}finally {
//关闭资源
DBUtil.close(resultSet);
DBUtil.close(preparedStatement);
DBUtil.close(connection);
}
return 4;

}

 

 

运行结果:

软工概论-课堂练习:添加信息_第5张图片

 

错误:

软工概论-课堂练习:添加信息_第6张图片

 

软工概论-课堂练习:添加信息_第7张图片

 

软工概论-课堂练习:添加信息_第8张图片

 

正确的:

 

软工概论-课堂练习:添加信息_第9张图片

 

软工概论-课堂练习:添加信息_第10张图片

mysql表中内容前后对比:

软工概论-课堂练习:添加信息_第11张图片

 

按照PSP0级的要求记录开发过程中的项目计划日志、时间记录日志、缺陷记录日志:

       1.                                                                                                                   周活动总结表

                                                                                        姓名:马佳慧                                                   日期:2017/11/28

日期\任务

听课

编程

阅读课本

日总计

周日

 

 180

 30

 210

周一

 

180

100

280

周二

100

120

50

270

周三

 

180

50

230

周四

 

180

50

230

周五

100

120

30

250

周六

560

120

 

680

周总结

        760

       1080

      340

1150

                                                                  单位:min

 

        

2.                                                                                                           时间记录日志

                                                                               学生:马佳慧                                            日期:2017/11/28

                                                                               教师:王建民                                            课程:软件工程概论

日期\时间

开始时间

结束时间

中断时间

净时间

活动

备注

11/25

9:00

11:30

10:30

120分钟

听课

课间

 

14:00

17:30

15:30

140分钟

听课

课间休息

11/26

9:30

12:00

10:40

100分钟

练习

中场休息

 

14:30

18:00

16:00

200分钟

练习

中场休息(自习)

11/27

18:00

21:30

22:00

150分钟

写作业,练习,提交作业

熟悉使用GitHub

11/28

8:00

10:00

8:50/9:50

100分钟

听课,小测

课间

 

13:00

19:00

15:00

180分钟

改错,补充,写总结

导员开报作业等

                                                                  单位:min

 3                                                                                                           .缺陷记录日志

 

                                                              学生:马佳慧                                            日期:2017/11/28

                                                              教师:王建民                                            课程:软件工程概论

日期\时间

编号

类型

引入阶段

排除阶段

修复时间

修复缺陷

11/28

1

91

编码

编译

3min

 

描述:在判断上课地点是否以指定中文开头时出错

 

2

40

编码

编译

10min

 

描述:try......catch......finally语句的处理

 

3

编码

doc命令行

60min

 

描述:doc命令行不接受中文,在数据库中插入时并不能识别,以至于插不进去或者乱码

 

4

20

编码

编译

5min

 

 

描述:在jsp界面编写时,在<%    %>中漏掉了分号“;”

 

转载于:https://www.cnblogs.com/mm20/p/7911511.html

你可能感兴趣的:(java,数据库,javascript,ViewUI)