仅用Jsp实现对数据库的增删改查
jsp的功能
jsp的功能JSP(JavaServer Pages)是一种用来开发动态Web页面的Java技术。
它可以将Java代码嵌入到HTML文档中,以实现更丰富的页面交互和动态数据展示功能。
以下是JSP的一些常见功能。
1. 动态页面生成:JSP可以根据用户请求,动态生成HTML页面,并将页面内容返回给浏览器。
这使得网页内容可以根据不同的条件和参数进行自适应的展示。
开发者可以在JSP中使用Java代码来处理用户请求,调用数据库、调用其他Java对象等。
2. 数据库访问:JSP可以直接连接数据库,并执行数据库操作。
通过使用Java的数据库连接API,JSP可以从数据库中查询、添加、修改和删除数据,然后将结果展示在Web页面上。
这可以实现数据的持久化和动态更新。
3. 表单处理:JSP可以处理用户提交的表单数据。
通过在JSP页面中定义HTML表单元素,并在表单的提交动作中指定JSP的URL,JSP可以接收表单数据,并对数据进行验证、处理和存储。
这些可以用来实现用户注册、登录、数据录入等功能。
4. 条件判断和循环:JSP支持使用Java的条件语句和循环语句。
这使得可以在JSP页面中根据不同的条件展示不同的内容,或者重复展示一段代码块。
通过使用if语句、switch语句和for循环等,可以实现更复杂的页面逻辑。
5. 页面重定向和转发:JSP可以将请求重定向到其他页面,或者将请求转发到另一个JSP或Servlet。
这使得可以在不同的页面之间进行跳转和协作,实现业务流程的分步处理。
6. 用户认证和会话管理:JSP提供了与用户认证和会话管理相关的内置对象。
通过这些对象,可以实现用户登录、注销、用户角色权限控制等功能。
同时,JSP还支持在页面级别和应用程序级别上进行会话管理。
7. 页面模板和复用:JSP支持使用页面模板和标签库进行页面复用。
可以将多个JSP页面中的公共部分抽取出来,形成一个模板文件,然后在其他JSP页面中引用该模板文件。
用jsp程序对数据库表进行增、删、差、改操作
pstmt.setString(6,request.getParameter("Phone")) ;
pstmt.setFloat(7,Float.parseFloat(Grade)) ;//这个地方的问题要牢记
pstmt.setFloat(8,Float.parseFloat(Use)) ;//这个地方的问题要牢记
生 日 费:<input type="text"name="Use"><br>
<input type="submit"value="添加">
<input type="reset"value="重置">
</font>
</form>
<h3><a href="admin.jsp">返回</a>管理员页面</h3>
int x = pstmt.executeUpdate() ;//这个用法牢记
%>
<%
if(x>=1){
flag = true;
%>
添加信息成功!
<h3><a href="admin.jsp">返回</a>管理员页面</h3>
<%
}
%>
<%
}catch(Exception e){
e.printStackTrace() ;
使用JSP对数据库进行增删改查
使用JSP对数据库进行增删改查JSP(Java Server Pages)是一种用于开发Web应用程序的Java技术。
它可以直接在HTML页面中嵌入Java代码,实现动态生成页面内容。
在使用JSP进行数据库的增删改查操作时,通常需要借助JDBC(Java Database Connectivity)来进行数据库的连接和操作。
接下来,需要进行数据库的连接。
可以使用JDBC提供的DriverManager类和Connection接口来实现。
首先,需要定义数据库的相关信息,如驱动程序名称、数据库URL、用户名和密码。
然后,使用DriverManager的静态方法getConnection(来获取数据库连接,传入相应的参数。
例如,对于MySQL数据库,可以使用如下代码进行连接:String url = "jdbc:mysql://localhost:3306/database_name"; // 数据库URLString userName = "root"; // 数据库用户名String password = "password"; // 数据库密码try//加载驱动程序Class.forName(driverName);//获取数据库连接Connection connection = DriverManager.getConnection(url, userName, password);//...} catch (ClassNotFoundException e)e.printStackTrace(;} catch (SQLException e)e.printStackTrace(;连接成功后,接下来可以进行数据库的增删改查操作。
通常,可以使用JDBC的Statement或PreparedStatement对象来执行SQL语句。
Statement对象用于静态SQL语句,而PreparedStatement对象用于动态SQL语句。
jsp实训个人工作总结
jsp实训个人工作总结在JSP实训课程中,我学到了许多关于Java Server Pages的知识和技能,并且完成了许多实际的项目,现在我来总结一下我的个人工作成果和收获。
首先,在课程中我学会了如何搭建JSP的开发环境,包括Java EE服务器的安装和配置以及JSP文件的编写和调试。
通过实际操作,我熟练掌握了JSP的基本语法和标签的使用,能够编写简单的动态网页。
其次,在实训项目中,我完成了一个个人博客网站的开发。
在这个项目中,我通过JSP技术实现了用户管理、文章发布、评论管理等功能,并且应用了一些前端技术,使网站更加美观和友好。
通过这个项目,我不仅学会了JSP在实际项目中的应用,还锻炼了自己的项目管理和团队合作能力。
此外,我还参与了一个团队项目,使用JSP技术开发了一个在线购物网站。
在这个项目中,我负责了页面布局和一些基本功能的实现。
通过和团队成员的合作,我学会了如何在团队中高效地分工协作,解决问题和提高项目的质量。
最后,通过这个实训课程,我不仅掌握了JSP的技术,还培养了自己的动手能力和解决问题的能力。
我相信这些技能和经验将对我的未来职业发展产生重要的影响。
总的来说,JSP实训课程帮助我建立了对Web开发的基本理念和技能,我收获了许多宝贵的经验。
我会继续努力学习,不断提升自己的能力,在将来的工作中更加出色地发挥自己的作用。
JSP实训课程是我在大学中学到的一门重要课程,通过这门课程的学习和实践,我收获了许多宝贵的经验和技能。
首先,我学会了如何使用JSP技术创建动态网页,这包括了掌握JSP的基本语法、标签的使用以及与Java后端的交互。
在课程中,我通过实际的编程练习,加深了对JSP技术的理解和掌握,并且体会到了动态网页相对于静态网页的优势。
在课程的实训项目中,我独立完成了一个个人博客网站的开发,这项项目锻炼了我在JSP技术上的实际应用能力。
我学会了构建整体网站的架构,处理用户的登录与注册,管理用户发布的博客文章并且实现用户间的评论系统。
JSP仓库管理系统的设计与实现
JSP仓库管理系统的设计与实现一、引言随着电子商务的迅猛发展,仓库管理成为一个重要的环节。
传统的仓库管理主要依靠人工操作,效率低下且易出错。
为了提高仓库管理的效率和准确性,本文设计与实现了一套基于JSP技术的仓库管理系统。
二、需求分析1.仓库管理:用户可以进行仓库的增删改查操作,包括仓库信息的录入、修改和删除等。
2.库存管理:用户可以对仓库的库存进行管理,包括商品的入库和出库操作,以及库存的实时查询。
3.货物追踪:用户可以根据货物的编号查询货物的详细信息和相关操作记录。
4.用户管理:系统需要包含用户的登录和权限管理功能,管理员可以对用户进行增删改查操作。
三、系统设计1.数据库设计系统主要包括以下几个表:仓库信息表、货物信息表、入库记录表、出库记录表、用户表等。
其中,仓库和货物信息表是核心表,其他表与其有外键关联。
数据库采用MySQL进行设计和实现。
2.页面设计系统共包含以下页面:登录页面、主页、仓库管理页面、库存管理页面、货物追踪页面、用户管理页面等。
采用JSP技术进行页面的设计和开发,使用Bootstrap框架进行页面布局和样式美化。
3.功能实现(1)登录功能:用户输入用户名和密码进行登录,系统根据用户的权限跳转到相应的主页。
(2)仓库管理功能:用户可以对仓库信息进行增删改查操作,通过表格展示仓库信息,并提供表单进行录入和修改。
(3)库存管理功能:用户可以对库存进行操作,包括商品的入库和出库操作,以及查询库存信息。
用户输入商品编号和数量进行入库或出库操作,系统更新库存信息。
(4)货物追踪功能:用户可以根据货物编号查询货物的详细信息和相关操作记录,系统展示相关信息。
(5)用户管理功能:管理员可以对用户进行增删改查操作,包括用户的权限管理。
用户信息通过表格展示,并提供表单进行录入和修改。
四、系统实现1.环境准备系统开发环境为Windows,需安装Java开发环境、MySQL数据库、Tomcat服务器等。
SpringBoot实现简单的增删改查
SpringBoot实现简单的增删改查在pom.xml添加相应的依赖<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.3</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 前端使⽤thymeleaf来代替jsp --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency></dependencies>配置⽂件配置数据库等#serverserver.port=80#项⽬名:server.servlet.context-path#spring dataSourcespring.datasource.url=jdbc:mysql:///dbgoods?serverTimezone=GMT%2B8&characterEncoding=utf8ername=rootspring.datasource.password=rootmybatis.mapper-locations=classpath:/mapper/*/*.xml#spring log.cy=debug#spring thymeleaf(假如没有配置也会默认配置,在默认配置中prefix默认值为classpath:/templates/,后缀默认为.html)#不⽤重启服务器,⽹页就能刷新spring.thymeleaf.cache=falsespring.thymeleaf.prefix=classpath:/templates/pages/spring.thymeleaf.suffix=.html数据层添加相应注解实现sql语句(或者通过xml配置来实现)数据层封装了商品信息,并提供get和set⽅法,为Goods类1.查询所有数据@Select("select * from tb_goods")List<Goods> findAll();2.按照id删除数据@Delete("delete from tb_goods where id=#{id}")int deleteById(Integer id);3.修改数据(1)修改数据⾸先要新建⼀个界⾯,按照id查找内容,并将查找到的内容显⽰到⽂本框内@Select("select * from tb_goods where id=#{id}")Goods findById(Integer id);(2)再添加查找的⽅法@Update("update tb_goods set name=#{name},remark=# {remark},createdTime=now() where id=#{id}")int update(Goods goods);4.新增数据@Insert("insert into tb_goods(name,remark,createdTime) values (#{name},#{remark},now())")int add(Goods goods);业务层提供对应接⼝⽅法和实现类1.业务层接⼝public interface GoodsService {List<Goods> findObject();int add(Goods goods);int update(Goods goods);Goods findById(Integer id);}2.业务层实现类@Servicepublic class GoodsServiceImpl implements GoodsService {@Autowiredprivate GoodsDao goodsDao;@Overridepublic List<Goods> findObject() {long start=System.currentTimeMillis();List<Goods> list = goodsDao.findObjects();long end=System.currentTimeMillis();System.out.println("query time:"+(end-start));return list;}@Overridepublic int add(Goods goods) {return goodsDao.add(goods);}@Overridepublic int update(Goods goods) {return goodsDao.update(goods);}@Overridepublic Goods findById(Integer id) {return goodsDao.findById(id);}控制层写具体实现1.跳转到⾸页并且查找所有商品@RequestMapping("doGoodsUI")public String doGoodsUI(Model model) {List<Goods> list = goodsService.findObject();model.addAttribute("goods",list);return "goods";}2.业务层实现类@Servicepublic class GoodsServiceImpl implements GoodsService {@Autowiredprivate GoodsDao goodsDao;@Overridepublic List<Goods> findObject() {long start=System.currentTimeMillis();List<Goods> list = goodsDao.findObjects();long end=System.currentTimeMillis();System.out.println("query time:"+(end-start));return list;}@Overridepublic int add(Goods goods) {return goodsDao.add(goods);}@Overridepublic int update(Goods goods) {return goodsDao.update(goods);}@Overridepublic Goods findById(Integer id) {return goodsDao.findById(id);}控制层写具体实现1.跳转到⾸页并且查找所有商品@RequestMapping("doGoodsUI")public String doGoodsUI(Model model) {List<Goods> list = goodsService.findObject();model.addAttribute("goods",list);return "goods";}2.删除商品@RequestMapping("doDeleteById/{id}")// (@PathVariable Integer id)告诉服务器,id拿到的是从⽹页上同样叫id的数据 public String dodeletebyId(@PathVariable Integer id){int delete = goodsDao.deleteById(id);//doGoodsUI前⾯没有加/的话,跳转的⽹址是替代了最后⼀个/后⾯的内容 return "redirect:/goods/doGoodsUI";}3.修改商品(1)先将查找出来的商品显⽰在⽂本框中@RequestMapping("doFindById/{id}")public String doFindByID(@PathVariable Integer id,Model model){Goods goods = goodsService.findById(id);model.addAttribute("goods",goods);return "goods-update";}(2)实现修改@RequestMapping("doUpdateGoods")public String doUpdateGoods(Goods goods){goodsService.update(goods);return "redirect:/goods/doGoodsUI";}4.新增商品@RequestMapping("doSaveGoods")public String doSaveGoods(Goods goods){goodsService.add(goods);return "redirect:/goods/doGoodsUI";}前端采⽤html+thymeleaf模板代替jsp2.each表⽰遍历拿到的数组,goods是从控制层拿到的model的名字3.id,name和remark与数据库对应,date要格式化拿到数据,该语法是thymeleaf固定写法<tr th:each="g:${goods}"><td th:text="${g.id}">1</td><td th:text="${}">AAAAAAA</td><td th:text="${g.remark}">aa</td><td th:text="${#dates.format(g.createdTime,'yyyy-MM-dd HH:mm')}">aa</td><!-- <td><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" th:href="@{/goods/doDeleteById(id=${g.id})}" rel="external nofollow" ><button>删除</button></a></td>--><td><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" th:href="@{/goods/doDeleteById/{doDeleteById}(doDeleteById=${g.id})}" rel="external nofollow" ><button>删除</button></a></td> <td><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" th:href="@{/goods/doFindById/{id}(id=${g.id})}" rel="external nofollow" ><button>修改</button></a></td></tr>4.新增商品界⾯(1)标签⾥的name属性要和sql语句⼀致(2)这⾥由于数据库中的id列设置了⾃增长,所以不需要id属性,createdTime列使⽤了now()获取当前时间,所以也不需要传值,所以在控制层的doUpdateGoods⽅法⾥可以使⽤封装好的Goods来接收从html拿到的参数<form th:action="@{/goods/doSaveGoods}" method="post"><ul><li>name:<input type="text" name="name"></li><li>remark:<textarea rows="3" cols="20" name="remark"></textarea></li><li><input type="submit" value="Save Goods"></li></ul></form>5.修改商品界⾯(1)因为id列⾃增长,所以修改商品信息不需要id这⼀列,但传参数有需要⼀起传送过去,所以添加了⼀个输⼊框,默认设置为隐藏,将其value设置为id的值<form th:action="@{/goods/doUpdateGoods}" method="post"><input type="hidden" name="id" th:value="${goods.id}"><ul><li>name:<input type="text" name="name" th:value="${}"></li><li>remark:<textarea rows="3" cols="20" name="remark" th:text="${goods.remark}"></textarea></li><li><input type="submit" value="Update Goods"></li></ul></form>以上就是Spring Boot实现简单的增删改查的详细内容,更多关于Spring Boot增删改查的资料请关注其它相关⽂章!。
jdbc数据库增、删、改、查语句
jdbc数据库增、删、改、查语句一、增加数据1. 插入单行数据在JDBC中,我们可以使用INSERT INTO语句来向数据库中插入单行数据。
例如,我们要向student表中插入一条新的学生记录,可以使用以下语句:INSERT INTO student (id, name, age) VALUES (1, '张三', 18);2. 批量插入数据如果我们要向数据库中插入多行数据,可以使用批量插入的方式,以提高效率。
例如,我们要向student表中插入多条新的学生记录,可以使用以下语句:INSERT INTO student (id, name, age) VALUES (1, '张三', 18), (2, '李四', 20), (3, '王五', 22);二、删除数据1. 删除指定行数据在JDBC中,我们可以使用DELETE FROM语句来删除数据库中的指定行数据。
例如,我们要删除student表中id为1的学生记录,可以使用以下语句:DELETE FROM student WHERE id = 1;2. 删除所有数据如果我们要删除数据库中的所有数据,可以使用DELETE FROM语句,并不指定任何条件。
例如,我们要删除student表中的所有学生记录,可以使用以下语句:DELETE FROM student;三、修改数据1. 更新指定行数据在JDBC中,我们可以使用UPDATE语句来更新数据库中的指定行数据。
例如,我们要将student表中id为1的学生记录的年龄修改为20岁,可以使用以下语句:UPDATE student SET age = 20 WHERE id = 1;2. 批量更新数据如果我们要更新数据库中的多行数据,可以使用批量更新的方式,以提高效率。
例如,我们要将student表中id为1和2的学生记录的年龄都修改为20岁,可以使用以下语句:UPDATE student SET age = 20 WHERE id IN (1, 2);四、查询数据1. 查询所有数据在JDBC中,我们可以使用SELECT语句来查询数据库中的数据。
java项目中的增删改查方法
java项目中的增删改查方法在Java项目中,增删改查(CRUD)操作是非常常见的需求。
无论是开发Web应用、移动应用还是后台系统,都会涉及到对数据的增加、删除、修改和查询操作。
在Java中,我们通常使用数据库来存储数据,而针对数据库的增删改查操作,我们通常会使用SQL语句来实现。
下面我们来看看在Java项目中,如何实现增删改查方法。
1. 增加(Create),在Java项目中,要实现数据的增加操作,通常需要先连接数据库,然后使用SQL语句向数据库中插入新的数据。
在Java中,我们可以使用JDBC(Java Database Connectivity)来连接数据库,使用PreparedStatement或者Statement来执行插入操作。
另外,如果我们使用了ORM框架(如Hibernate或MyBatis),我们也可以通过框架提供的API来实现数据的插入操作。
2. 删除(Delete),删除数据操作通常是根据某个条件从数据库中删除符合条件的数据。
在Java项目中,我们可以使用SQL的DELETE语句来实现数据的删除操作。
同样地,我们可以使用JDBC或者ORM框架提供的API来执行删除操作。
3. 修改(Update),修改数据操作通常是根据某个条件更新数据库中的数据。
在Java项目中,我们可以使用SQL的UPDATE语句来实现数据的更新操作。
同样地,我们可以使用JDBC或者ORM框架提供的API来执行更新操作。
4. 查询(Retrieve),查询数据操作是从数据库中检索数据。
在Java项目中,我们可以使用SQL的SELECT语句来实现数据的查询操作。
同样地,我们可以使用JDBC或者ORM框架提供的API来执行查询操作,并将查询结果返回给Java应用程序。
总的来说,在Java项目中实现增删改查方法,我们通常会使用JDBC来连接数据库并执行SQL语句,或者使用ORM框架来简化数据库操作。
无论是使用JDBC还是ORM框架,都需要对数据库操作有一定的了解,以便能够编写出高效、安全的增删改查方法。
JSP对Oracle进行增删改查
jsp连接Oracle的增删改查****************************************db包中的stu学生************************************ package db;public class stu { //学生类private String sid;private String name;private String age;public String getAge() {return age;}public void setAge(String age) {this.age = age;}public String getName() {return name;}public void setName(String name) { = name;}public String getSid() {return sid;}public void setSid(String sid) {this.sid = sid;}}*****************************************db包中的ConnDb************************************ package db;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;public class ConnDb { //数据库连接和操作的类private static Connection con=null;private static Statement stmt=null;private static ResultSet rs=null;public static void statrconn(){ //连接数据库方法try {Class.forName("oracle.jdbc.driver.oracledriver "); //创建连接数据库中间件try {con=DriverManager.getConnection("jdbc:odbc:thin:@127.0.0.1:1521:orcl","",""); //连接access数据源 } catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static void endconn() throws SQLException{ //关闭数据源的类if(rs!=null){rs.close();rs=null;}if(stmt!=null){stmt.close();stmt=null;}if(con!=null){con.close();con=null;}}public static void update(String sql) throws SQLException{ //数据库更新类statrconn();stmt=con.createStatement();stmt.executeUpdate(sql);endconn();}public static ArrayList getList1(String sql) throws SQLException{ //数据库查询类,查询结果集以列表返回 ArrayList list=new ArrayList();statrconn();stmt=con.createStatement();rs=stmt.executeQuery(sql);while(rs.next()){stu st=new stu();st.setSid(rs.getString("sid"));st.setName(rs.getString("sname"));st.setAge(rs.getString("sage"));list.add(st);}endconn();return list;}}********************************主jsp页面list.jsp****************************************<%@ page language="java" import="db.ConnDb,db.stu,java.util.*" pageEncoding="gbk"%><%--jsp头文件,包括引入的包和支持语言,gbk为支持中文--%><%ArrayList list = ConnDb.getList1("select sid,sname,sage from test"); //获得test表中所有数据并以列表形式返回%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>My JSP 'list.jsp' starting page</title></head><body><input type="button" name="bottom" value="添加新学生"onclick="javascript:window.location.href='add.jsp'"><br><br><table border="1" ><tr><td>编号</td><td>姓名</td><td>年龄</td><td>操作</td></tr><% {for(Iterator it=list.iterator();it.hasNext();){stu s=(stu)it.next();%><tr><td><%=s.getSid()%></td><td><%=s.getName()%></td><td><%=s.getAge()%></td><td><a href="update.jsp?sid=<%=s.getSid()%>">修改</a><a href="delete.jsp?sid=<%=s.getSid()%>" onclick="return confirm('确定删除?');">删除</a></td></tr><% }}%></table></body></html>************************************************添加学生的jsp页面add.jsp******************************************<%@ page language="java" pageEncoding="gbk"%><%%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>add</title></head><body><form action="addinfo.jsp" method="post"> 提交到addinfo.jsp<p>添加学生:</p>姓名:<input type="text" name="sname"><br><br>年龄:<input type="text" name="sage"><br><br><input type="submit" name="submit" value="提交"></form></body></html>*******************************************添加学生的处理jsp页面addinfo.jsp*******************************************<%@ page language="java" import="db.ConnDb" pageEncoding="gbk"%><%String name = new String(request.getParameter("sname").getBytes("iso-8859-1"));String age = new String(request.getParameter("sage").getBytes("iso-8859-1"));ConnDb.update("insert into test (sname,sage) values ('"+name+"','"+age+"')");response.sendRedirect("list.jsp");%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>My JSP 'addinfo.jsp' starting page</title></head><body>添加成功!<br></body></html>***********************************修改学生信息的jsp页面update.jsp*******************************************************<%@ page language="java" import="db.ConnDb,db.stu,java.util.*" pageEncoding="gbk"%><%String sid=new String(request.getParameter("sid")); //获得要修改人的sidArrayList list=ConnDb.getList1("select sid,sname,sage from test where sid=" +sid); //查询要修改学生的信息,并以列表返回stu s = (stu)list.get(0); //将列表内容换成学生类%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>My JSP 'update.jsp' starting page</title></head><body><form method="post" action="updateInfo.jsp"> 提交到updateInfo.jsp页面<p>修改学生信息 </p><p>姓名:<input type="text" name="sname" value="<%=s.getName() %>"> 修改学生信息</p><p> 年龄:<input type="text" name="sage" value="<%=s.getAge()%>"><input type="hidden" name="sid" value="<%=sid%>"></p><p> <input type="submit" value="提交" name="button1"></p></form></body></html>**************************************修改的处理页面updateInfo.jsp*********************************************************<%@ page language="java" import="db.ConnDb" pageEncoding="gbk"%><%String name = new String(request.getParameter("sname").getBytes("ISO-8859-1")); //接收信息 String age = new String(request.getParameter("sage").getBytes("ISO-8859-1"));String sid = new String(request.getParameter("sid").getBytes("ISO-8859-1"));String sql = "update test set sname='"+name+"',sage='"+age+"' where sid="+sid;ConnDb.update(sql); //执行修改response.sendRedirect("list.jsp"); //转到list.jsp页面%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>My JSP 'updateInfo.jsp' starting page</title></head><body>This is my JSP page. <br></body></html>******************************************删除的处理页面delete.jsp********************************************************<%@ page language="java" import="db.ConnDb" pageEncoding="gbk"%><%ConnDb.update("delete from test where sid ="+request.getParameter("sid")); //获得要删除人的sid并删除response.sendRedirect("list.jsp"); //转到list.jsp页面%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>My JSP 'delete.jsp' starting page</title></head><body>This is my JSP page. <br></body>。
jsp数据库实验报告
jsp数据库实验报告JSP数据库实验报告引言:JSP(JavaServer Pages)是一种用于开发动态Web应用程序的Java技术。
它允许开发人员将Java代码嵌入到HTML页面中,以实现动态内容的生成和展示。
在本次实验中,我们将探索JSP与数据库的结合,以实现数据的存储和检索功能。
一、实验背景随着Web应用程序的发展,对于数据的存储和管理需求也越来越高。
数据库成为了解决这一问题的重要工具。
在本次实验中,我们将使用MySQL数据库,并通过JSP技术实现与数据库的交互。
二、实验环境本次实验所使用的环境如下:1. 操作系统:Windows 102. 开发工具:Eclipse3. 服务器:Apache Tomcat4. 数据库:MySQL三、实验步骤1. 创建数据库在MySQL中创建一个名为"student"的数据库,用于存储学生信息。
2. 创建表在"student"数据库中创建一个名为"student_info"的表,用于存储学生的姓名、年龄和成绩等信息。
3. 编写JSP页面创建一个名为"student.jsp"的JSP页面,用于展示学生信息和实现数据的存储和检索功能。
在页面中,我们可以通过HTML表单收集学生信息,并将其存储到数据库中。
同时,我们还可以通过查询表单实现对学生信息的检索。
4. 编写JavaBean创建一个名为"Student.java"的JavaBean类,用于封装学生信息。
该类包含姓名、年龄和成绩等属性,并提供相应的getter和setter方法。
5. 编写数据库操作类创建一个名为"DBUtil.java"的数据库操作类,用于与MySQL数据库进行交互。
该类包含连接数据库、插入数据和查询数据等方法。
6. 配置web.xml文件在web.xml文件中配置JSP页面的访问路径和数据库连接信息。
前端 js 增删改查原理
前端 js 增删改查原理Javascript是网页前端开发所必需的一种语言,而在实际的网页开发中,增删改查操作也是非常常见的。
下面将围绕“前端 js 增删改查原理”进行阐述。
一、增加操作增加操作是指向网页中添加新的元素或节点,常见的方式有两种:innerHTML和document.createElement。
1. 使用innerHTMLinnerHTML是一种向网页中添加HTML代码的方式,可以轻松地添加新的HTML标签,例如div、p、ul、li等等。
以下是使用innerHTML 添加一个 div 元素的示例:var newDiv = document.createElement("div");newDiv.innerHTML = "这是新添加的一个div元素";document.body.appendChild(newDiv);2. 使用document.createElement使用document.createElement可以先创建一个新的元素,再将其添加到网页中。
以下是使用document.createElement添加一个 p 元素的示例:var newPara = document.createElement("p");var paraText = document.createTextNode("这是新添加的一个p元素");newPara.appendChild(paraText);document.body.appendChild(newPara);二、删除操作删除操作是指在网页中删除特定的元素或节点。
常见的方式有两种:innerHTML和removeChild。
1. 使用innerHTML内置的innerHTML可以轻松地清空一个元素中的所有内容。
以下是使用innerHTML清空一个 div 元素的示例:var myDiv = document.getElementById("myDiv");myDiv.innerHTML = "";2. 使用removeChild使用removeChild方法可以从文档中删除指定的子节点。
JSP增删改参考代码
示例数据库:数据库名:new数据库字段及属性:示例目录结构:src文件夹下:dao包:(1) BaseDao.java ——加载驱动,建立数据库连接,关闭操作对象(2)表名Dao.java ——Java处理程序,例如:增删改查这样的方法写在这个类中entity包:表名.java ——实体类,一个表是一个实体,把表中的列作为实体的属性、并生成get、set方法及带参数和无参数的构造方法WebRoot文件夹下:JSP页面示例代码:BaseDao.javapackage dao;//要导入Java.sql包,才可以应用Connection、PreparedStatement、ResultSetimport java.sql.*;public class BaseDao {/*** 静态块,加载驱动SQL Server 2005 驱动,前提需导入SQL Server 2005 的JAR包*/static{try {Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/*** 获得数据库连接* @return conn*/public static Connection getConnection(){Connection conn = null;try {conn =DriverManager.getConnection ("jdbc:sqlserver://localhost:1433;DatabaseName=new", "sa", "sa"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }//返回数据库连接对象 return conn;} /*** 关闭操作对象,需注意关闭顺序* @param rs ResultSet 对象,用来存储查询执行后的结果 * @param pStmt PreparedStatement 对象,用来执行SQL 命令 * @param conn Connection 对象,用来建立数据库连接 */ public static void closeAll(ResultSet rs,PreparedStatement pStmt,Connection conn){if(rs != null ){rs.close();}if(pStmt != null ){pStmt.close(); }if(conn != null ){conn.close(); }}}FirstTitleDao.java /*** 显示列表,查询时使用 */public static List getList(){ //创建Connection 对象 Connection conn=null;//定义PreparedStatement 对象 PreparedStatement stmt=null;//创建ResultSet 对象ResultSet rs=null;//创建列表List list=new ArrayList();try {//获得数据库连接conn=BaseDao.getConnection();//创建PreparedStatement对象stmt=conn.prepareStatement("select * from FirstTitle");//执行SQL语句,返回ResultSet对象rs=stmt.executeQuery();//操作结果集while(rs.next()){entity.FirstTitle title = new FirstTitle();//将结果集中的数据设置到对象中Array title.setId(rs.getInt(1));title.setTitleName(rs.getString(2));title.setCreator(rs.getString(3));title.setCreateTime(rs.getString(4));//将对象添加到列表中list.add(title);}} catch (SQLException e) {// TODO 自动生成 catch 块e.printStackTrace();}finally{//关闭操作对象BaseDao.closeAll(rs, stmt, conn);}//返回列表return list;}/***向数据库中插入数据*/public static void add(entity.FirstTitle title){Connection con = null;PreparedStatement pStmt = null;ResultSet rs = null;try {con = dao.BaseDao.getConnection();pStmt = con.prepareStatement("insert into FirstTitle(Id,TitleName,Creator,CreateTime) values(?,?,?,?)");pStmt.setInt(1, title.getId());pStmt.setString(2, title.getTitleName()); pStmt.setString(3, title.getCreator()); pStmt.setString(4, title.getCreateTime()); //执行SQL 语句,返回受影响的行数(int 类型) pStmt.executeUpdate(); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace();}}/** * 删除 */public static void delete(int id){ Connection con = null ;PreparedStatement pStmt = null ; ResultSet rs = null ; try { con = dao.BaseDao.getConnection ();pStmt = con.prepareStatement("delete from FirstTitle where id=?"); pStmt.setInt(1, id); pStmt.executeUpdate(); } catch (SQLException e) {// TODO 自动生成 catch 块 e.printStackTrace();}finally { dao.BaseDao.closeAll (rs, pStmt, con); }} /*** 修改,根据ID 返回实体 */public static entity.FirstTitle getModel(int id){ //创建操作对象Connection con = null ;PreparedStatement pStmt = null ; ResultSet rs = null ; try { //获得数据库连接con = dao.BaseDao.getConnection();//创建prepareStatement对象pStmt = con.prepareStatement("select * from FirstTitle where id=?");//设置参数pStmt.setInt(1, id);//执行SQL语句返回结果集rs = pStmt.executeQuery();//操作结果集if(rs.next()){//创建实体类的对象,并赋值entity.FirstTitle title = new FirstTitle();title.setId(rs.getInt(1));title.setTitleName(rs.getString(2));title.setCreator(rs.getString(3));title.setCreateTime(rs.getString(4));}} catch (SQLException e) {// TODO自动生成 catch 块e.printStackTrace();}finally{dao.BaseDao.closeAll(rs, pStmt, con);}return title;}/***修改方法*/public static void update(entity.FirstTitle title){Connection con = null;PreparedStatement pStmt = null;ResultSet rs = null;try {con = dao.BaseDao.getConnection();pStmt = con.prepareStatement("update FirstTitle set ID=?,TitleName=?,Creator=?,CreateTime=? where id=?");pStmt.setInt(1, title.getId());pStmt.setString(2, title.getTitleName());pStmt.setString(3, title.getCreator());pStmt.setString(4, title.getCreateTime());pStmt.setInt(5, title.getId());pStmt.executeUpdate();} catch (SQLException e) {// TODO自动生成 catch 块e.printStackTrace();}finally{dao.BaseDao.closeAll(rs, pStmt, con);}}WebRoot文件夹下的页面:index.jsp中显示列表部分:<%//获得列表List list = FirstTitleDao.getList();//循环列表,并获得列表中的对象。
增删改查操作或方法
增删改查操作或方法增加(Create)数据:1.使用INSERT语句插入新的记录到数据库表中。
2.调用API或库函数来创建一个新的对象,并将其保存到内存或数据库中。
3.使用图形界面或命令行工具,提供一个表单或交互式界面,以便用户输入新的数据。
删除(Delete)数据:1.使用DELETE语句从数据库表中删除特定的记录。
2.调用API或库函数来删除指定的对象。
3.提供一个删除功能的图形界面或命令行工具,以便用户选择并删除数据。
修改(Update)数据:1.使用UPDATE语句更新数据库表中的记录。
2.调用API或库函数更新指定的对象。
查询(Retrieve)数据:1.使用SELECT语句从数据库表中检索特定的记录。
2.调用API或库函数以检索指定的对象。
3.提供一个功能的图形界面或命令行工具,允许用户输入条件并返回相关的数据。
以下是一些常见的增删改查操作的代码示例(以关系型数据库为例):增加数据:```sqlINSERT INTO table_name (column1, column2, ...) VALUES(value1, value2, ...);```删除数据:```sqlDELETE FROM table_name WHERE condition;```修改数据:```sqlUPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;```查询数据:```sqlSELECT column1, column2, ... FROM table_name WHERE condition;```以下是一些常见的增删改查操作的代码示例(以编程语言为例):增加数据:```pythondef create_data(data):#调用数据库或API创建新数据pass```删除数据:```pythondef delete_data(id):#调用数据库或API删除指定数据pass```修改数据:```pythondef update_data(id, data):#调用数据库或API更新指定数据pass```查询数据:```pythondef retrieve_data(condition):#调用数据库或API查询满足条件的数据pass```根据实际需求,增删改查操作可以有许多变种。
基于JSP的图书管理系统设计与实现
基于JSP的图书管理系统设计与实现随着互联网技术的不断发展,基于Web的应用程序越来越普及,而JSP(JavaServer Pages)技术是其中最常用的一种。
本文将介绍如何使用JSP技术设计和实现一个图书管理系统。
一、系统需求分析图书管理系统需要满足以下需求:1、用户可以查看图书列表、搜索图书、添加图书、编辑图书和删除图书。
2、管理员可以查看用户列表、添加用户、编辑用户和删除用户。
3、系统需要提供用户登录和权限管理功能。
二、系统设计1、数据库设计本系统采用MySQL数据库。
数据库中包含以下表:1、book:存储图书信息,包括book_id、title、author、publisher、price、isbn等字段。
2、user:存储用户信息,包括user_id、username、password、role 等字段。
3、login_log:存储用户登录日志,包括user_id、login_time等字段。
2、系统架构设计本系统采用MVC模式进行设计,分为模型层、视图层和控制层。
模型层负责处理数据和业务逻辑,视图层负责展示页面,控制层负责控制流程。
3、系统功能模块设计本系统分为以下几个模块:1、用户模块:包括用户注册、登录、找回密码等功能。
2、图书模块:包括查看图书列表、搜索图书、添加图书、编辑图书和删除图书等功能。
3、权限模块:包括权限控制和角色管理等功能。
4、日志模块:包括查看登录日志等功能。
三、系统实现1、用户模块实现用户模块主要包括用户注册、登录和找回密码等功能。
在JSP页面中,可以使用HTML表单来接收用户输入的信息,然后通过JSP代码将信息提交给Servlet进行处理。
在Servlet中,可以使用Java代码对用户输入的信息进行验证,并将验证结果返回给JSP页面进行展示。
2、图书模块实现图书模块主要包括查看图书列表、搜索图书、添加图书、编辑图书和删除图书等功能。
在JSP页面中,可以使用HTML表格来展示图书列表,使用HTML表单来接收用户的搜索信息,使用JSP代码将信息提交给Servlet进行处理。
4-8动态网页修改数据库数据
动态网页修改数据库数据JSP动态网页连接访问数据库,修改数据的操作一般有两种方式,一种是用于前台的,只能修改数据库表中的一条记录;另一种是用于后台系统管理员操作使用的,可以方便的修改表中的任何一条记录。
本节分别对两种进行介绍。
一、范例的演示和代码清单演示的前提和前几节完全相同。
演示步骤:1.启动IE,在地址栏键入http://127.0.0.1:8080/ch4/ch4-51.htm,用户名处,输入数据库表中,已经存在的一个用户名;密码处输入对应的密码。
如图4-60所示窗口:图4-602.单击“提交”按钮。
出现该用户所有资料的列表,其中用户名和密码两项,注有“不能更改”提示,其他项目都可以进行修改的操作。
如图4-61所示窗口:图4-613.在对应的文本框中,将需要变动的数据进行修改,然后单击“修改”按钮。
屏幕出现修改成功的信息,以及修改后数据列表。
如图4-62所示窗口:图4-624.至此一条指定的数据记录修改完成。
这属于一般用于前台,用户修改自己的注册资料用的修改方式。
用于后台的系统管理员修改方式,请在此单击“返回浏览修改”,或返回主页后,单击“浏览修改”。
出现浏览修改的界面。
如图4-63所示窗口:图4-635.网页窗口显示的是,数据库表中的所有数据记录。
并且在每一条记录的后面,有一个“修改”的链接。
单击任何一条数据记录后面的“修改”,进入数据修改界面。
如图4-64所示窗口:图4-646.这个网页窗口和前面单独修改一条记录的图4-61界面一样,只是数据内容不同。
它们实际上是调用的同一个JSP动态网页。
改动某些数据后,单击“修改”按钮。
出现修改成功的信息,以及修改后数据列表。
如图4-65所示窗口:图4-657.这个网页窗口和前面单独修改一条记录成功的图4-62界面一样,只是数据内容不同。
它们实际上也是调用的同一个JSP动态网页。
单击“返回浏览修改”,可以进行下一条记录的修改。
这个范例由四个网页构成:1.ch4-51.htm:用表单的形式,提供需要修改数据记录的用户名、密码,表单的action指向ch4-51.jsp。
Jsp+Mysql进行简单的增删改查-标准要点
J2EE开发环境的搭建Jsp+Mysql+Tomcat+MyEclipse简单的增删改查许斌Bingo的博客/xubinster目录一、安装和配置JDK ---------------------------------------------------------------------------------------------------------------- 3二、安装TOMCAT------------------------------------------------------------------------------------------------------------------ 12三、安装Java IDE开发工具Eclipse或MyEclipse ------------------------------------------------------------------------- 19四、MySQL的安装 ----------------------------------------------------------------------------------------------------------------- 40五、安装Mysql Front --------------------------------------------------------------------------------------------------------------- 58六、创建数据库---------------------------------------------------------------------------------------------------------------------- 66七、添加Mysql链接驱动 --------------------------------------------------------------------------------------------------------- 67八、增删查改功能页面制作 ------------------------------------------------------------------------------------------------------ 69 J2EE开发环境的搭建,其实不复杂,下面我以初学者为例,简单总结如下:下面以MySQL+tomcat+Eclipse为例环境准备,搭建环境之前需要准备好搭建用到的程序:Jdk—开发java程序用于编译和运行java的环境Tomcat—Web中间件,用于管理运行java web应用Mysql—开源简单易用的关系型数据库Mysql front—管理MySQL的界面工具Eclipse—JAVA最流行的开源的开发工具IDE环境步骤1、安装和配置JDK2、安装TOMCAT3、安装Eclipse4、创建web工程5、MySQL的安装6、安装Mysql Front7、创建数据库8、添加Mysql链接驱动9、实现简单的增删查改环境搭建:Jdk—1.6.0_21Tomcat—6.0.18.0Myeclipse—9.0Mysql—4.1Mysql front—5.1一、安装和配置JDK官方网址:安装JDK傻瓜式安装,下一步即可。
使用JSP对数据库进行增删改查
使用JSP对数据库进行增删改查注意红体字!首先,打开sql server 2005,输入用户名(我用的登录名是panpan)密码(我设置的是123)。
先建个表student,Create table stu(id number(30) ,name varchar(50) ,age number(30),sex varchar(30),major varchar(50) );打开MyEclipse,新建一个新项目,让后将index.jsp删除,然后在webRoot文件中新建以下几个jsp文件。
index.jsp<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><html><head><base href="<%=basePath%>"><title>输入学生信息界面</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><script type="text/javascript"">function validate(){var id=document.forms[0].id.value;var name=document.forms[0].name.value;var age=document.forms[0].age.value;var major=document.forms[0].major.value;if(id<=0){alert("学号不能为空,请输入学号!");return false;}else if(name.length<=0){alert("姓名不能为空,请输入姓名!");return false;}else if(age<=0){alert("请输入合法年龄!");return false;}else if(major.length<=0){alert("专业不能为空,请输入所学专业!");return false;}else{return true;}}</script></head><body><br><center><h2>学生信息输入</h2><hr><form action="insert.jsp" method="post" id="form" onSubmit= "validate()" ><h4> 学号:<input type="text" name="id" class="{required:true}"></input><br></h4> <h4> 姓名:<input type="text" name="name"></input><br></h4><h4> 年龄:<input type="text" name="age"></input><br></h4><h4> 性别:<input type="radio" name="sex" value="男">男<input type="radio" name="sex" value="女">女<br></h4><h4> 专业:<input type="text" name="major"></input><br></h4><input type="submit" value="提交"/></form><a href=layout.jsp>查看已输入信息</a></center></body></html>insert.jsp<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%><%@ page import="java.sql.*"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><html><head><base href="<%=basePath%>"><title>插入学生信息</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"></head><body><%request.setCharacterEncoding("gb2312");String id=request.getParameter("id");String name=request.getParameter("name");System.out.println(name);String age=request.getParameter("age");String sex=request.getParameter("sex");String major=request.getParameter("major");Connection conn=null;Statement stat=null;Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");String url="jdbc:sqlserver://localhost:1433;DatabaseName=Test";String user="panpan"; (我的数据库登录名是我自己新建的,你可以根据你自己的String password="123"; 登录名和密码进行修改)conn=DriverManager.getConnection(url,user,password);stat=conn.createStatement();int rs=stat.executeUpdate("insert into stu(id,name,age,sex,major)values("+id+",'"+name+"',"+age+",'"+sex+"','"+major+"')");%><center><br><a href=index.jsp>返回信息输入页面</a> <a href=layout.jsp>进入信息查询页面</a></center><%if(stat!=null){stat.close();}if(conn!=null){conn.close();}%></body></html>layout.jsp<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%><%@ page import="java.sql.*"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><html><head><base href="<%=basePath%>"><title>学生信息</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"></head><body><%response.setCharacterEncoding("gb2312");request.setCharacterEncoding("gb2312");String id=request.getParameter("id");String name=request.getParameter("name");String age=request.getParameter("age");String sex=request.getParameter("sex");String major=request.getParameter("major");Connection conn=null;Statement stat=null;ResultSet rs=null;Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");String url="jdbc:sqlserver://localhost:1433;DatabaseName=Test";String user="panpan"; (我的数据库登录名是我自己新建的,你可以根据你自己的String password="123"; 登录名和密码进行修改)conn=DriverManager.getConnection(url,user,password);stat=conn.createStatement();rs=stat.executeQuery("select * from stu");%><br><h2>学生信息</h2> <hr><br><h3>全部学生信息如下</h3><table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <tr><td>学号</td><td>姓名</td><td>年龄</td><td>性别</td><td>专业</td></tr><%while(rs.next()){out.print("<tr>");out.print("<td>"+rs.getInt("id")+"</td>");out.print("<td>"+rs.getString("name")+"</td>");out.print("<td>"+rs.getInt("age")+"</td>");out.print("<td>"+rs.getString("sex")+"</td>");out.print("<td>"+rs.getString("major")+"</td>");%><td><a href="delete.jsp?id=<%=rs.getInt("id") %>">删除</a></td><td><a href="update.jsp?id=<%=rs.getInt("id") %>">修改</a></td><%out.print("</tr>");}%></table><br><h3><a href=index.jsp>返回信息输入页面</a></h3><br><%if(rs!=null){rs.close();}if(stat!=null){stat.close();}if(conn!=null){conn.close();}%></body></html>update.jsp<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%><%@ page import="java.sql.*"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><html><head><base href="<%=basePath%>"><title>学生信息</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"></head><body><%response.setCharacterEncoding("gb2312");request.setCharacterEncoding("gb2312");String id=request.getParameter("id");Connection conn=null;Statement stat=null;ResultSet rs=null;Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");String url="jdbc:sqlserver://localhost:1433;DatabaseName=Test";String user="panpan"; (我的数据库登录名是我自己新建的,你可以根据你自己的Stringpassword="123"; 登录名和密码进行修改)conn=DriverManager.getConnection(url,user,password);stat=conn.createStatement();rs=stat.executeQuery("select * from stu where id="+id+"");%><br><h2>学生信息</h2> <hr><br><h3>要修改的学生信息如下</h3><table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <tr><td>学号</td><td>姓名</td><td>年龄</td><td>性别</td><td>专业</td></tr><%while(rs.next()){out.print("<tr>");out.print("<td>"+rs.getInt("id")+"</td>");out.print("<td>"+rs.getString("name")+"</td>");out.print("<td>"+rs.getInt("age")+"</td>");out.print("<td>"+rs.getString("sex")+"</td>");out.print("<td>"+rs.getString("major")+"</td>");out.print("</tr>");%></table><br><br><h3>将学生信息更改为:</h3><form action="update2.jsp" method="post" ><h4> 学号:<input type="text" name="id"value="<%=rs.getInt("id") %>" title="学号不能改变"></input><br></h4><h4> 姓名:<input type="text" name="name"title="姓名不能为空"></input><br></h4><h4> 年龄:<input type="text" name="age"title="年龄不能为空"></input><br></h4><h4> 性别:<input type="radio" name="sex" value="男">男<input type="radio" name="sex" value="女">女<br></h4><h4> 专业:<input type="text" name="major"title="专业不能为空"></input><br></h4><input type="submit" value="修改"/></form><br><h3><a href=index.jsp>返回信息输入页面</a></h3><h3><a href=layout.jsp>返回信息查询页面</a></h3><%}%><%if(rs!=null){rs.close();}if(stat!=null){stat.close();}if(conn!=null){conn.close();}%></body></html>update2.jsp<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%><%@ page import="java.sql.*"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><html><head><base href="<%=basePath%>"><title>修改页面</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"></head><body><%request.setCharacterEncoding("gb2312");String id1=request.getParameter("id");String name1=request.getParameter("name");String age1=request.getParameter("age");String sex1=request.getParameter("sex");String major1=request.getParameter("major");Connection conn=null;Statement stat=null;Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");String url="jdbc:sqlserver://localhost:1433;DatabaseName=Test";String user="panpan"; (我的数据库登录名是我自己新建的,你可以根据你自己的String password="123"; 登录名和密码进行修改)conn=DriverManager.getConnection(url,user,password);stat=conn.createStatement();stat.execute("update stu set id="+id1+",name='"+name1+"',age="+age1+",sex='"+sex1+"',major='"+major1+"'whereid="+id1+"");ResultSet rs=stat.executeQuery("select * from stu where id="+id1+"");%><br><h3>修改成功!</h3><br><h3>修改后的信息为:</h3><hr><br><br><table width="450" border="100" cellSpacing=1 style="font-size:15pt;border:dashed 1pt"> <tr><td>学号</td><td>姓名</td><td>年龄</td><td>性别</td><td>专业</td></tr><%while(rs.next()){out.print("<tr>");out.print("<td>"+rs.getInt("id")+"</td>");out.print("<td>"+rs.getString("name")+"</td>");out.print("<td>"+rs.getInt("age")+"</td>");out.print("<td>"+rs.getString("sex")+"</td>");out.print("<td>"+rs.getString("major")+"</td>");out.print("</tr>");}%></table><br><br><h3><a href=index.jsp>返回信息输入页面</a></h3><h3><a href=layout.jsp>返回信息查询页面</a></h3><%if(rs!=null){rs.close();}if(stat!=null){stat.close();}if(conn!=null) {conn.close();}%></body></html>。
java项目中实现增删改查基本流程
java项目中实现增删改查基本流程
在Java项目中实现增删改查的基本流程如下:
1. 增加(Create):创建一个新的实体对象,并将其存储到数据库中。
- 创建实体对象的类,并进行必要的字段设置。
- 使用数据库连接或ORM框架,将实体对象插入到数据库表中。
2. 删除(Delete):从数据库中删除指定的实体对象。
- 根据需要删除的实体对象的唯一标识(如ID),准备删除操作。
- 使用数据库连接或ORM框架,执行删除操作。
3. 修改(Update):更新数据库中的指定实体对象。
- 获取需要修改的实体对象,并对其进行必要的字段修改。
- 使用数据库连接或ORM框架,执行更新操作。
4. 查询(Retrieve):从数据库中查询实体对象。
- 根据需要查询的条件(如关键字、字段值等),准备查询操作。
- 使用SQL语句或ORM框架提供的查询方法,执行查询操作,并将结果返回。
以上是增删改查的基本流程,在实际项目中可能会有更多复杂的逻辑和操作,例如条件查询、分页查询、排序等,但基本的增删改查流程是不变的。
请根据具体项目的需求和技术栈,选
择合适的数据库处理方式(原生JDBC、JPA、MyBatis等)来实现。
用jsp实现 数据修改和删除
insert.java 数据库插入操作
Error.jsp
Left.html
添加 查询
Stu.jsp
Add.jsp
Table.inc Pages.htm Form.inc
Combinequery.jsp
Selpage.jsp
Page.js
修改…
update.jsp
Update_item.jsp
HTML页面URL传参
URL传参数:
URL?参数名=参数值
<td><a href='del.jsp?cid="+cid+"&action=del' title='删除'>删除</a></td>
&表示加上一个参数,这里两个参数,一个 cid,一个action;
接收传递过来的页面参数
删除
Del.jsp
如果disabled,既不能修改,也不能传参
本次实训的文件结构:
Topgin.jsp身份验证
Database.java 连接数据库实现用户身份验证
ISOtoGb2312.java 实现表半单汉字的转换
Stu.html
Teacher.jsp
select.java 数据库操作
String action=ISOtoGb2312.convert(request.getParameter("action")); String cid=ISOtoGb2312.convert(request.getParameter("cid"));
实现记录的删除: