servlet中Java连接数据库后的基本操作
servlet中Java连接数据库后的基本操作
- 在eclipse中新建一个工程:login
- 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到;
- 需要知道数据库的用户名和密码:用户名:user.密码:yufei
- 需要改变的地方:
地方一:web.xml
|
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>login</display-name> <welcome-file-list> <welcome-file>login.html</welcome-file> </welcome-file-list> <!-- 注册servlet --> <servlet> <!-- servlet的名字 (名字可以随便取)但是约定俗成的名字是开发的servlet的名字 --> <servlet-name>LoginServlet</servlet-name> <!-- 配置servlet的包名 (不要带上后缀) --> <servlet-class>login.com.LoginServlet</servlet-class> </servlet> <!-- 映射servlet --> <servlet-mapping> <!-- 映射servlet的名字 必须和你注册的servlet的名字一样 --> <servlet-name>LoginServlet</servlet-name> <!-- 配置servlet处理的路径(路径可以随便取)但是约定俗成的名字是开发的servlet的名字 --> <url-pattern>/LoginServlet</url-pattern> </servlet-mapping> </web-app> |
地方二:在Java Resources 里面新建包和html文件比如:login.com(包),LoginServlet.java文件
下面是:LoginServlet.java里面的内容:
| package login.com;
import java.io.IOException;
import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class LoginServlet extends HttpServlet{ @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub //处理中文的乱码 resp.setContentType("text/html;charset=utf-8");//响应 req.setCharacterEncoding("utf-8"); //请求 String name = req.getParameter("username"); //username是输入框对应的name String pwd = req.getParameter("pwd"); try { try { //表单填写的都是字符串 Class.forName("com.mysql.jdbc.Driver"); Connection connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/login", "root", "yufei"); // System.out.println(connection); String sql = "select * from conn where name=? and pwd=? ;"; PreparedStatement preparedStatement = connection.prepareStatement(sql); System.out.println("name:"+name+"============" +"pwd" + pwd); preparedStatement.setString(1, name); preparedStatement.setString(2, pwd); ResultSet re = preparedStatement.executeQuery(); PrintWriter out = resp.getWriter(); out.print("<h1>==========</h1>"); String sql1 = "select * from student"; PreparedStatement sprint = connection.prepareStatement(sql1); ResultSet studinf = sprint.executeQuery(); while(re.next()){ out.print("<h1>登录成功</h1>"); out.print("<h5>学生的信息是:</h5>"); while(studinf.next()){ out.print("<p>学生的姓名是:"+ studinf.getString("name")+"===id号:"+studinf.getString("id")+"===性别是:"+studinf.getString("gender")+"===年龄是:"+studinf.getString("age")+"</p>"); } return;//终止程序 } out.print("<h1>登录失败</h1>"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } //form默认的提交方式是get @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub doPost(req,resp); } } |
地方三:在文件WebContent里面新建一个html文件,比如:login.html
下面是:login.html内容:
|
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>login</title> </head> <body> <h1> welcome to login</h1> <div style='outline:1px black solid;width:340px; text-align: center;'> <h1>登录页面</h1> <!-- <a href='HelloServer'>获得连接</a> --> <!-- <%=request.getContextPath()%>/ --> <form action='LoginServlet' method='post'> <p>用户名:<input type='text' name='username'/></p> <p>密码: <input type='password' name='pwd'/></p> <button>login</button> </form> </div> </body> </html> |
地方四:添加夹包-在文件夹WEB-INF的lib里面加上夹包Server和mysql
servlet中Java连接数据库后的基本操作的更多相关文章
- jsp九大内置对象与servlet中java对象
jsp九大内置对象 request对象 : getParameter(String name)获取表单提交的数据 getParamegerNames() 获取客户端提交的所有参数名 getAttri ...
- 在IDEA中已经配置postgis数据库驱动并且能在Java类中连接数据库,但在servlet中无法连接数据库且导致Tomcat自动断开连接的解决方案
最近在IDEA中用JDBC连接PostgreSQL数据库时遇到了这样一个奇怪的事情: 从PostgreSQL JDBC Driver官网下载好JDBC驱动之后,在IDEA的Project Struct ...
- JAVA连接数据库后,对数据库进行增删改查
1.Statement 增删改: 方法:execute(String SQL) String url="jdbc:Access:///E://A//shop.mdb"; Conne ...
- servlet中 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver异常
解决方法:将mysql-connector-java-xxx-bin.jar包,复制到项目下WebContent/WEB-INF/lib目录下,刷新重启tomcat运行即可.
- 【Java框架型项目从入门到装逼】第五节 - 在Servlet中接收和返回数据
在上一节的程序中,我们可以看到HttpServletRequest, HttpServletResponse这两个对象.可以说,这是JavaWeb中至关重要的两个对象.接下来,我们来做一个简短的说明: ...
- Java第三阶段学习(十一、Servlet基础、servlet中的方法、servlet的配置、ServletContext对象)
一.Servlet简介 1.什么是servlet: sun公司提供的一套规范(接口),用来处理客户端请求.响应给浏览器的动态资源.但servlet的实质就是java代码,通过java的API动态的向 ...
- Java Web之Servlet中response、request乱码问题解决
Java Web之Servlet中response.request乱码问题解决 一.request请求参数出现的乱码问题 get请求: get请求的参数是在url后面提交过来的,也就是在请求行中, ...
- java基础77 Http协议及Servlet中的GET、POST提交方式
本文知识点(目录): 1.什么是http协议 2.查看http协议的工具 3.http协议的内容 4.请求方式 5.请求头和响应头(以及获取请求头信息的方法) 6.实体内 ...
- Java之通过反射机制选择servlet中的对应的方法
此方法用于在对Javaee开发中的通过对应的名称而选择servlet中的对应的方法 注:主要代码如下 protected void doGet(HttpServletRequest req, Http ...
随机推荐
- PostgreSQL Performance Monitoring Tools
PostgreSQL Performance Monitoring Tools https://github.com/CloudServer/postgresql-perf-tools This pa ...
- MySQL 常用函数列表
一.数学函数 select SQRT (2) --取平方根select ABS (-234) --取绝对值select FLOOR (COUNT (*)/5.0) from news --取小于这个小 ...
- android测试(转)
1.冒烟测试 跟web端的测试流程一样,你拿到一个你们开发做出来的apk首先得去冒烟,也就是保证他的稳定性,指定时间内不会崩溃.这款原生sdk自带的monkey可以当做我们的测试工具.就跟我之前博客所 ...
- (三)开关检测来控制LED灯的亮灭
开关检测案例一: 具体电路图如下: K1--K4闭合,控制 D1—D4 亮灭 产生的问题: 1.关于 R8 R9 R7 R10 的阻值选择问题,倘若太大的话, 比如10K 不管开关断开还是闭合,好像 ...
- ligerui+json_001_实现表格(grid)的后台数据显示、分页
代码下载地址: http://download.csdn.net/detail/poiuy1991719/8556841 效果: 需要导入的包: 01:编写界面:index.jsp <%@ pa ...
- Tomcat8.5
说明:Tomcat服务器上一个符合J2EE标准的Web服务器,在tomcat中无法运行EJB程序,如果要运行可以选择能够运行EJB程序的容器WebLogic,WebSphere,Jboss等Tomca ...
- oracle的冷备份
oracle冷备份要备份三类文件:数据文件,控制文件,日志文件 查看所有数据文件 select name from v$datafile; 查看所有日志文件 select member from v$ ...
- springmvc处理ajax请求
1.controller将数据封装成json格式返回页面 @RequestMapping("/dataList") public void datalist(CsoftCunsto ...
- PAT乙级 1025. 反转链表 (25)
1025. 反转链表 (25) 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一个常数K以及一个单链表L,请 ...
- Fatal error: Call to a member function bind_param() on a non-object in
今天在练习 mysql是出现错误: Fatal error: Call to a member function bind_param() on a non-object in 解决步骤: 1. ...