❀ 开发带数据的javaWeb项目的步骤:【jdbc+servlet+jsp】

简介: ❀ 开发带数据的javaWeb项目的步骤:【jdbc+servlet+jsp】

❀ 开发带数据的javaWeb项目的步骤:【jdbc+servlet+jsp】


建立一个目录minweb用于保存开发javaWeb依赖的最小jar包:

 

❀ 开发带数据的javaWeb项目的步骤:

【jdbc+servlet+jsp】

✿ jdbc:进行数据库操作

✿ servlet:接收请求,调用业务【这里的业务主要是通过dao处理数据库】处理请求,控制界面跳转。

✿ jsp:页面展示

 

1, 引入jar包:

引入javaWeb项目的最小jar包+数据库需要的jar包【驱动依赖和Druid】+一个“红辣椒”的编译扩展工具;

 

2,测试后台代码:

先测一下后台数据库的是否可以跑起来先;

 

3,书写Servlet类,测试连接数据库数据:

先写Servlet类【接收处理数据】--》然后测试一下servlet:

  ① 测试servlet路径是否正确;

  ② 测试servlet里是否能获取到数据库的数据库; 之后才开始书写代码

 

4,书写对应jsp类,测试控制界面跳转:

然后书写对应的jsp【然后先测试从 servlet类的访问路径是否可以成功跳转过来后才开始书写代码】

 

5,测试servlet共享数据给jsp:

然后servelt 中共享数据给jsp 【req.setAttribute(“属性名”,数据对象);】,然后先在jsp中测试一下 ${属性名}

 

6,使用jstl 和 el,边写边测试观察后继续写:【观察类里有什么属性,同时观察每个类的属性情况【都有……】】

 

7,要处理请求,必须要有servlet:

 

① 查找学生信息列表

 

② 删除操作:

✿ 要注意在 WEB-INF 目录下的jsp文件,外界是无法直接访问的,无法通过直接在浏览器输入地址访问,也无法通过超链接直接访问。

-----------问题:当前在某个jsp文件A.jsp 文件中,想要跳转到 B.jsp 文件中【但是B.jsp在WEB-INF 中,外界是无法访问的,需要间接访问,通过加入一个Servlet来解决】

 

③ 保存操作:

 

④ 修改操作:

--------跟保存操作是一样的,可以在保存的操作上通过一些判断来实现既可以完成保存功能也可以完成修改功能

1)共用EditServlet  和  edit.jsp

【只需要判断是否传递过来参数----有参数【非null,非空】是修改操作; 没有参数,是保存操作】

----${获取参数相对应的数据对象}

【无参数,则el表达式什么都没有,

  有参数,则el表达式可以拿到参数对应的数据对象】

 

2)共用 saveServlet

-----这里为了实现区分保存功能和修改功能【通过id区分,保存是没有参数id,而修改有参数id】,在 edit.jsp 中设置一个隐藏的input,目的就是为了设置id参数

<input type="hidden" name="id" value="${student.id}"/>

 

8,合并Servlet,将下面的几个Servlet合并成一个studentServlet

请求分发,通过判断请求,调用不同的请求处理方法

 

❀ 登录界面的验证【账号、密码都需要验证】------是否与数据库匹配

--------------------------通过账号到数据库中查找匹配的用户,然后返回匹配的用户,然后再比较密码

--------------------------依靠账号的唯一性就可以进行大概率的验证了

//把当前登录用户存储到Session

req.getSession().setAttribute("USER_IN_SESSION", user);

//登录验证成功

resp.sendRedirect("/studnet");

 

✿ 登录界面的验证作用:只有通过登录,才可以访问到咱的管理界面【在studnetServlet中加入验证】   

 

 


目录
相关文章
|
10月前
|
Java 数据库连接 数据库
【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101 cannot allocate 0 bytes for anlHeapMalloc异常
【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101 cannot allocate 0 bytes for anlHeapMalloc异常
|
10月前
|
Java 数据库连接 定位技术
【YashanDB知识库】如何使用jdbc向YashanDB批量插入gis数据
本文以GIS表为例,介绍通过Java代码向数据库插入POINT类型地理数据的方法。首先创建包含ID和POS字段的GIS表,POS字段为ST_GEOMETRY类型。接着利用Java的PreparedStatement批量插入10条经纬度相同的POINT数据,最后查询结果显示成功插入10条记录,验证了操作的正确性。
206 19
|
10月前
|
Java 数据库连接 定位技术
【YashanDB知识库】如何使用jdbc向YashanDB批量插入gis数据
【YashanDB知识库】如何使用jdbc向YashanDB批量插入gis数据
|
11月前
|
Java 数据库连接 数据库
【YashanDB 知识库】jdbc 查询 st_geometry 类型的数据时抛出 YAS-00101 cannot allocate 0 bytes for anlHeapMalloc 异常
**简介:** 客户在使用 YashanDB JDBC 驱动查询含 st_geometry 列的数据时,遇到 YAS-00101 错误,提示无法分配内存。该问题影响所有版本的 YashanDB,导致业务中断。原因是用户缺少对 st_geometry 类型的 execute 权限。解决方法是为用户赋权:`grant execute any type to &lt;username&gt;;` 以恢复正常运行。
|
10月前
|
Java 数据库连接 定位技术
【YashanDB知识库】如何使用jdbc向YashanDB批量插入gis数据
【YashanDB知识库】如何使用jdbc向YashanDB批量插入gis数据
|
10月前
|
SQL Java 数据库连接
【YashanDB数据库】由于网络带宽不足导致的jdbc向yashandb插入数据慢
由于网络带宽不足导致的jdbc向yashandb插入数据慢
|
11月前
|
Java 数据库连接 数据库
【YashanDB 知识库】jdbc 查询 st_geometry 类型的数据时抛出 YAS-00101 cannot allocate 0 bytes for anlHeapMalloc 异常
**问题简介:** 客户使用 YashanDB JDBC 驱动查询含 st_geometry 列的数据时,出现 YAS-00101 错误,提示无法分配 0 字节内存。该问题影响所有 YashanDB 版本,导致业务中断。原因是数据库用户缺少 st_geometry 类型的 execute 权限。解决方法是为用户赋权:`grant execute any type to &lt;username&gt;;`。
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
360 0
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
222 0
|
SQL 分布式计算 关系型数据库
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-22 Sqoop 数据MySQL到HDFS(全量) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
264 0