做一个简易jsp项目的详细开发流程及步骤


一.数据库

1.建库

CREATE DATABASE 库名
		ON PRIMARY
		(
			NAME = '库名_data',
			FILENAME = 'D:\DATA\库名_data.mdf',
			SIZE = 5MB,
			MAXSIZE = 10MB,
			FILEGROWTH = 15%
		)
	
		LOG ON
		(
			NAME = '库名_log',
			FILENAME = 'D:\DATA\库名_log.ldf',
			SIZE = 5MB,
			MAXSIZE = 10MB,
			FILEGROWTH = 15%
		)

2.建表,添加约束,插入数据,导出

	这些根据所要创建的表自行添加
	这个可以通过点点点的操作完成,也可以通过sql语句完成

二.创建项目

1.导jar包(三个)

2建包:

1.创建util包,写DBHelper

			1.加载驱动程序
				static{
					Class.forName("?");
				}
			2.连接数据库
				public static Connection getConn(){
					Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;database=MyDB","sa","1");
					return conn;
				}
			3.关闭资源
				public static void close(Connection conn , PreparedStatement ps , ResultSet rs){
					conn.close();
					ps.close();
					rs.close();
				}
			4.更新(增删改)操作
				public static boolean update(String sql, Object [] objs){
					// 连接数据库
					Connection conn = getConn();
					// 与数据库进行交互
					PreparedStatement ps;
					// 设置数据
					for(int i = 0,i < objs.length , i++){
						ps.setObjecct(i+1,objs[i]);
					}
					// 结果
					int count = ps.execu;
					// 判断返回
					if(count > 0){
						return true;
					} else {
						return false;
					}
					// 关闭资源
					close(conn,ps,null);
				}

2.创建model包,数据类

			1.根据数据库的列名添加私有属性
				eg: private Integer id;
			2.生成公有方法(无参构造方法,含参构造方法,get和set方法)
				可以通过Source下的
					1.Generate Getters and Setters
					2.Generate Constructor using Fields
					3.Generate Constructors from Superclass
			3.创建dao层,操作接口/实现类(impl) 
				== > 为了方便可以直接把操作方法写在dao层
				及各个操作类的查询方法
					1.用户登录查询方法
					2.获取列表数据(所有数据)方法 --> 这个方法用在获取列表数据上
					3.通过id获取数据(单行数据)方法 -->这个方法用在详情和修改上
			4.创建action包,写servlet用的

三.功能

一.登录

		1.写一个login.jsp页面
			一个form表单, action = "login"的servlet类中
			添加一个错误接受提示,当登录失败返回到登录页面显示错误
		2.登录的servlet(LoginServlet)
			1.设置编码 
			2.接收参数(用户名和密码)
			3.查询(通过用户名和密码去使用登录查询方法查询是否有这个数据)
				有:return 数据
				无:return null
			4.判断响应
				if(数据 != null){
					// 登录成功
					1.创建session会话,并将登录的用户数据设置到session会话当中去
					2.重定向到获取列表信息的servlet中
				} else {
					// 登录失败
					1.设置返回注释
					2.通过转发返回到登录页面
				}

二.注册

		1.写一个reg.jsp页面
			一个form表单, action = "reg"的servlet类中 onSubmit= "return check()"-->这里通过js来进行非空验证
			添加一个错误接受提示,当注册失败返回到注册页面显示错误
			非空验证:
				1.通过 var c = document.getElementById("对应的id名").value; 来获取数据
				2.验证 
					if(c == "" || c == undefined){
						// 数据为空,出来一个提示弹框,并返回false终止注册
						alert("数据不为空");
						return false;
					} else {
						// 数据不为空,返回true,进入注册的Servlet中进行注册操作
						return true;
					}
		2.注册的servlet(RegServlet)
			1.设置编码 
			2.接收参数(注册的各个数据)
			3.DBHelper中更新方法(需要一个SQL语句,一个Object类型的数组用来储存注册数据)
				String sql = "";
				Object [] objs = {接收参数的个个变量};
				有:return true; ==> 更新成功
				无:return false; ==> 更新失败
			4.接收返回参数
				boolean isOk = DBHelper.update(sql , objs);
			4.判断响应
				if(isOk){
					// 注册成功
					2.重定向到login.jsp页面进行登录
				} else {
					// 注册失败
					1.设置返回注释
					2.通过转发返回到注册页面
				}

三.列表

		1.获取列表信息的servlet(GetListServlet)	
			1.设置编码
			2.调用无参查询列表信息的方法并使用ArrayList<?> 接收 ?为你model包下定义的类名
				ArrayList<?> lists = ?Dao.select();
			3.通过转发将信息转发到列表的jsp中
		2.列表的jsp(list.jsp)
			1.写一个table表格
			2.通过<c:forEach itam="${注意:这里要一一对应}" var="自定义一个下面获取值的名称"></c:forEach>

四.新增

		1.新增的.jsp(add.jsp)
			跟注册类似,只是form表单的内容有所改变
			这里也可以添加非空验证
		2.新增的servlet(AddServlet)
			1.设置编码
			2.接收参数
			3.插入操作
				跟注册类似;
			4.响应
				// 添加成功
					跳转到获取数据列表的servlet中,获取完数据,进入到列表页面
				// 添加失败
					返回到添加的.jsp页面

五.修改

		1.通过id获取数据详情的servlet(getListToIdServlet)
			1.设置编码
			2.接收参数
			3.通过id获取数据详情的查询操作
			4.响应
				1.获取成功
					使用转发将数据发送到修改的jsp页面(update.jsp)
				2.获取失败
					返回列表
		2.修改的jsp页面(update.jsp)
			1.form表单 action="update"
			2.内容通过value="${}"获取
		3.修改的Servlet(UpdateServlet)
			1.设置编码
			2.接收参数
			3.String sql = "UPDATE <表名> SET 列名 = ?, WHERE id = ?";
			4.更新操作
			5.响应
				1.更新成功
					重定向到获取列表信息的servlet中
				2.更新失败
					返回到修改的.jsp页面

六.删除

		1.删除的servlet(DeleteServlet)
			1.设置编码
			2.获取id
			3.String sql = "DELETE FROM <表名> WHERE id = ?";
			4.更新操作
			5.重定向到获取列表信息的servlet中

七.详情(修改的前半段)

		1.通过id获取数据详情的servlet(getListToIdServlet)
			1.设置编码
			2.接收参数
			3.通过id获取数据详情的查询操作
			4.响应
				1.获取成功
					使用转发将数据发送到详情的jsp页面(info.jsp)
				2.获取失败
					返回列表
		2.详情的jsp页面(info.jsp)
			1.table表格 
			2.内容通过${}获取
			3.加一个超链接返回到获取数据列表的servlet中
				<a href="GetListServlet">返回列表</a>
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值