javaWeb使用servlet并且连接数据库向数据库插入数据

1.打开myeclipse,创建一个web项目。

2.在index.jsp   (在WebRoot下面)页面的body里面加入 如下代码:

<div align="center">
    <form action="servlet/LoginServlet" method="post">   <!--处理表单的servlet ,需要替换成自己的servlet,在下面创建的 -->
    <table>
    <tr>
    <td>账号:<input name="userName" type="text"/></td>
    </tr>
    <tr><td>密码:<input name="userPassword" type="password"/></td></tr>
     <tr>
    <td ><input type="submit" value="登陆"/>
    <input type="reset" value="取消"/></td>
    </tr>
    </table>
    </form>
    </div>

 

3.创建servlet。

(1)点击src——右键——new——package——输入包名字

  (2)点击刚创建的包—右键——new——servlet——输入名字—finish。

打开WebRoot——WEB——INF——打开web.xml,可以看见如下信息,myeclipse自动为我们生成了servlet的配置

<servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>com.hck.LoginServlet</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
    <url-pattern>/servlet/LoginServlet</url-pattern>
  </servlet-mapping>

我的index.jsp里面表单<form action="servlet/LoginServlet" method="post">   action里面的值就是和

和这个配置里面的蓝色部分一致。把你index.jsp里面action的值,换成你web.xml里面对应的servlet

 

4.在servlt类里面,接收我们表单传过去的数据,并显示出来。

打开刚创建的servlet,在doPost方法里面,添加如下代码:

response.setContentType("text/html;charset=UTF-8");    
  request.setCharacterEncoding("UTF-8");
  PrintWriter out = response.getWriter();
  out
    .println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
  out.println("<HTML>");
  out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
  out.println("  <BODY>");
  out.println("账号:"+request.getParameter("userName")+"<br>");
  out.println("密码:"+request.getParameter("userPassword")+"<br>");
  out.print("    This is ");
  out.print(this.getClass());
  out.println(", using the POST method");
  out.println("  </BODY>");
  out.println("</HTML>");
  out.flush();
  out.close();

 

注意红色部分,上面2句可以防止乱码,一定要加上,下面2句红色,就是用来获取我们传过来的数据,userName和表单里面的

userName要一一对应,就是要一模一样,接收后显示在网页上。

 

一般这里接收到数据,我们就可以对接受到的数据进行处理,比如把数据写入数据库什么的。

好了,一个简单的servler使用就完成了,部署到tomcat,浏览器访问打开,在表单填入信息,点击登录,就会在另外一个页面显示你填入的信息了。

 

 

 

继续完善:把接收到的数据写入数据库

1.下载安装mysql数据库(安装网上很多,搜搜看)

2.你可以用命令来完成数据的各项操作,也可以用图形界面工具,很方便。比如:Navicat for MySQL。安装好mysql后,点击开始菜单,找到它,点击,出现一个黑窗口

输入密码(你安装的时候后让你设置的),进入后输入 create database mytest;    回车,mytest是数据库名字,你可以自己取

 

创建表:输入     use mytest;   回车

在输入:

 create table user(name varchar(20),password varchar(20));   回车

 

数据库创建完毕,转到项目,把链接mysql数据库的包放入lib文件夹里面。

在项目的包里面创建一个类—DB.java

package com.hck;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DB {

 public static Connection getcon(Connection con)
 {
  String dbname="mytest";   //你创建的数据库名字
  String username="root";    //登陆数据库的账号,默认为root
  String password="111111";  //登陆密码
  String url="jdbc:mysql://127.0.0.1:3306/"+dbname+"?user="+username+"&password="+password+"";
 
     try {
   Class.forName("com.mysql.jdbc.Driver").newInstance();  //反射加载包
  } catch (InstantiationException e) {
 
   e.printStackTrace();
  } catch (IllegalAccessException e) {
  
   e.printStackTrace();
  } catch (ClassNotFoundException e) {
 
   e.printStackTrace();
  }
  try {
   con=DriverManager.getConnection(url);
  } catch (SQLException e) {
  
   e.printStackTrace();
  }
  return con;
  }
  
 public static void closecon(Connection con)
 {
  if(con!=null)
  {
   try {
    con.close();
   } catch (SQLException e) {
    e.printStackTrace();
   }
   con=null;
  }
 }
 public static Statement getsta(Connection con)
 {
  Statement sta=null;
  try {
   sta=con.createStatement();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return sta;
 }
 public static void closesta(Statement sta)
 {
  if(sta!=null)
  {
   try {
    sta.close();
   } catch (SQLException e) {

    e.printStackTrace();
   }
   sta=null;
  }
 }
 public static PreparedStatement getpsta(Connection con,String sql)
 
 {
  PreparedStatement psta=null;
  try {
   psta=con.prepareStatement(sql);
  } catch (SQLException e) {

   e.printStackTrace();
  }
  return psta;
  
 }
 public static ResultSet getrs(Statement sta,String sql)
 
 {
  ResultSet rs=null;
  try {
   rs=sta.executeQuery(sql);
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return rs;
 }
 public static void closers(ResultSet rs)
 {
  if(rs!=null)
  {
   try {
    rs.close();
   } catch (SQLException e) {
    e.printStackTrace();
   }
   rs=null;
  }
 }
public static void executeUpdate(Connection con,String sql)
{
 Statement sta=null;
 try {
  sta=con.createStatement();
  sta.executeUpdate(sql);
 } catch (SQLException e) {
  e.printStackTrace();
 }
}

}

 

在你的那个servlet里面添加代码,把doPost 方法里面的数据替换如下: 新增方法private void insertDate(),如下

private String userName;    //接收表单提交过来的账户
 private String passWord;     //密码

public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html;charset=UTF-8");  //设置格式编码
  request.setCharacterEncoding("UTF-8");            //设置格式编码
  userName = request.getParameter("userName");     //接收表单传过来的用户账号
  passWord = request.getParameter("userPassword");  //用户密码
  insertDate();    //下面方法,把数据插入数据库

 }
 private void insertDate() {
  Connection con = null;  //一个连接对象
  con = (Connection) DB.getcon(con);   //得到一个连接
  PreparedStatement ps = null;    //用于插入数据
  //sql语句,向表user里面,插入name和pass的值
  String sql = "insert into user(name,password) values(?,?)";  
  ps = (PreparedStatement) DB.getpsta(con, sql);
  try {
   ps.setString(1, userName);
   ps.setString(2, passWord);
   ps.executeUpdate();
   ps.close();
  } catch (SQLException e) {

   e.printStackTrace();
  }
 }


 

好了,重新启动tomcat,浏览器输入地址访问,填入数据,登陆,打开数据库,那个黑窗体,在里面输入

user mytest;   回车

select * from user;  回车

看表里面是否有数据了,如果有,那恭喜你,成功,如果没有,请检查数据库是否创建正确,表是否创建好,mysql包是否放入项目lib目录,看myeclipse下面,是否报错,包什么错

具体demo下载地址,有详细说明的:http://download.csdn.net/detail/hhhccckkk/5378107

 

 

  • 18
    点赞
  • 112
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
<项目介绍> 基于JavaWeb的期刊管理系统+程设报告.zip 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到94.5分,放心下载使用! 该资源适合计算机相关专业(如人工智能、通信工程、自动化、软件工程等)的在校学生、老师或者企业员工下载,适合小白学习或者实际项目借鉴参考! 当然也可作为毕业设计、课程设计、课程作业、项目初期立项演示等。如果基础还行,可以在此代码基础之上做改动以实现更多功能。 使用JavaWeb开发的数据库显示界面的课程设计,支持数据分页查询以及期刊的模糊搜索,首页采用动态二维码生成进行校验,支持上传图片,用户密码采用md5加密,支持期刊的分页显示。 )** **使用方法** :<br/> 这里说明一下:大致的使用方法<br/> 1、get clone 我的这个项目git<br/> 2、使用idea打开项目目录<br/> 3、导入sql数据库文件(默认账号密码在工程里有一个excle存储)<br/> 4、在项目结构中配置相应的lib路径<br/> 5、配置jdk版本17<br/> 6、修改数据库properties文件,改为你的数据库链接配置<br/> 7、配置你的tomcat(idea右上角添加运行配置,导入你的tomcat,然后idea会提示修正项目,修正即可,之后,上面会显示工程访问路径,点击就可以访问 项目采用技术 ## 后端 1. Junit测试 2. JDK17 进行开发 3. 采用Jar包 1. Druid数据库连接池 2. QueryRunner 3. commons beanUtils 4. commons dbUtils 5. commons fileUpload 6. commons codec 7. commons io 8. java.utils.UUID 9. Gson(google json包) 4. MySql数据库进行存储 5. 使用Tomcat服务部署 6. Json数据传输 ## 前端 1. jsp 2. js 3. css 4. Ajax请求(请求Json) 编 1. 完成数据库建立 2. 完成BookDao 3. 完成BookService 4. 完成JSP初始界面 5. 完成期刊删除以及首页展示 6. 编WebUtils类,转化注入Bean对象(封装BeanUtils) 7. 完成用户数据库建立 8. 完成用户类Servlet 9. 完成登录功能 10. 完成期刊增加,修改功能 11. 完成期刊查询分页显示功能 12. 实现模糊分页搜索功能后端编 13. 完成注册密码强度校验以及注册相应 14. 完成登陆页面设计 15. 完成首页的设计以及测试 16. 完成登陆权限检查(权限设置目录逻辑暂时未设置) 17. 完成用户密码MD5加密 18. 重构Book数据库增加src图片路径 19. 重构User数据库增加管理员权限以及其用户类型 20. 新增动态首页跳转功能(filter过滤器实现)以及单独点击期刊详情页面 21. 匹配后端随机生成图片信息,以及期刊封面文件的上传 22. 设置UUID信息生成唯一图片识别码 23. 修改管理员搜索结果页以及图片上传返回页面 24. 增加按钮删除添加触发跳转 25. 注销跳转设置使用Ajax 26. 完成整体基本功能页面联调 27. 完成同步删除图片功能 28. 增加已存在照片信息进行覆盖上传 29. 修改管理员期刊信息修改详情页面 ## 测试 1. 完成数据库连接测试 2. 完成BookDao测试 3. 完成BookService测试 4. 完成JSP初始界面测试 5. 完成期刊删除以及首页展示测试 6. 完成用户数据库测试 7. 完成登录测试 8. 完成期刊分页测试 9. 完成期刊增加,修改功能 10. 测试模糊匹配Dao测试 11. 测试模糊匹配Service层测试 12. 测试注册 13. 完成登陆页面设计 14. 测试权限检查的Filter 15. 测试MD5加密 16. 测试重构后用户信息插入 17. 测试动态首页跳转功能 18. 测试图片跳转详情页 19. 测试修改图书信息 20. 测试图片上传按钮 21. 页面跳转调试 22. 注销功能完成 23. 测试同步删除图片 24. 测试图片覆盖上传 25. 测试期刊详情修改页面
Java Web中,我们可以使用Servlet来修改数据库。首先,我们需要导入相关的包和类,如javax.servlet.Servletjava.sql.Connection等。接下来,我们需要编一个继承自javax.servlet.http.HttpServlet的类,该类将处理我们的数据库操作。 在servlet的doPost()方法中,我们可以获取到表单数据或者URL参数,并将其转换成合适的数据类型。然后,我们需要建立数据库连接,可以使用java.sql.DriverManager来获取数据库连接。在获取连接后,我们可以创建一个java.sql.Statement对象来执行SQL语句。 在SQL语句中,我们可以使用INSERT、UPDATE或DELETE语句来修改数据库。例如,我们可以使用INSERT语句将新数据插入数据库中,使用UPDATE语句来更新现有数据,或使用DELETE语句来删除数据。我们还可以使用WHERE子句来限制修改的范围。 执行SQL语句后,我们需要关闭Statement和Connection对象,以释放资源并关闭数据库连接。在关闭连接之前,我们可以使用java.sql.Connection.commit()方法提交事务,以确保修改操作被持久化。 除了使用基本的JDBC来执行数据库操作,我们还可以使用一些Java持久化框架(如MyBatis、Hibernate等),它们提供了更高级别的抽象和便捷的API,可以简化数据库操作的编和管理。 总的来说,使用Servlet修改数据库需要进行以下步骤:导入相关包和类、编Servlet类、获取表单数据或URL参数、建立数据库连接、执行SQL语句、关闭Statement和Connection对象。通过这些步骤,我们可以在Java Web应用程序中完成数据库的修改操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值