1:本地连接数据库的步骤

 1 public class LoginDao {
2
3 // jdbc操作的五部曲
4
5 // 1: 导入jar包
6 // 2: 加载驱动
7 // 3: 获取连接
8 // 4: 预处理
9 // 5: 执行SQL
10 // 6: 处理结果集
11 // 7: 关闭连接
12
13 static String url = "jdbc:mysql://127.0.0.1:3306/week11";
14 static String name = "root";
15 static String pass = "root";
16
17 public static void main(String[] args) {
18
19 try {
20 // 加载驱动
21 Class.forName("com.mysql.jdbc.Driver");
22 // 获取连接
23 Connection connection = (Connection) DriverManager.getConnection(url, name, pass);
24
25 String sql = "select * from t_admin where aname=? and apass=?";
26 // 预处理SQL语句
27 PreparedStatement ps = (PreparedStatement) connection.prepareStatement(sql);
28
29 // 设置预处理SQL的参数
30 ps.setObject(1, "dabu");
31 ps.setObject(2, "123");
32
33 // 执行查询
34 ResultSet rs = ps.executeQuery();
35
36 // 如果查询到了数据
37 if (rs.next()) {
38 System.out.println("查询成功");
39 } else {
40 System.err.println("查询失败");
41 }
42
43 } catch (Exception e) {
44
45 e.printStackTrace();
46 }
47
48 }

 2:与web相结合

 1 @WebServlet("/LoginServlet")
2 public class LoginServlet extends HttpServlet {
3 private static final long serialVersionUID = 1L;
4
5 public LoginServlet() {
6 // TODO Auto-generated constructor stub
7 }
8
9 protected void doGet(HttpServletRequest request, HttpServletResponse response)
10 throws ServletException, IOException {
11 // TODO Auto-generated method stub
12 response.getWriter().append("Served at: ").append(request.getContextPath());
13 }
14
15 protected void doPost(HttpServletRequest request, HttpServletResponse response)
16 throws ServletException, IOException {
17 // TODO Auto-generated method stub
18 doGet(request, response);
19 }
20
21 static String url = "jdbc:mysql://127.0.0.1:3306/week11?useUnicode=true&characterEncoding=utf-8&useSSL=false";
22 static String name = "root";
23 static String pass = "root";
24
25 @Override
26 protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {
27
28 // 获取浏览器发过来的值
29 HttpServletRequest req = (HttpServletRequest) arg0;
30
31 //这个方法负责具体的实践
32 HttpServletResponse sr=(HttpServletResponse)arg1;
33 PrintWriter out=sr.getWriter();
34
35 // 获取前台传过来的值
36 String userName = req.getParameter("username");
37 String userPass = req.getParameter("userpass");
38
39 // 去数据库里面查询有没有
40 // 2: 加载驱动
41 // 3: 获取连接
42 // 4: 预处理
43 // 5: 执行SQL
44 // 6: 处理结果集
45 // 7: 关闭连接
46
47 String sql = "select * from t_admin where aname=? and apass=?";
48
49 Connection connection=null;
50 PreparedStatement ps=null;
51 ResultSet rs=null;
52 try {
53
54 //加载驱动
55 Class.forName("com.mysql.jdbc.Driver");
56 //获取连接
57 connection = (Connection) DriverManager.getConnection(url, name, pass);
58 //预处理SQL
59 ps = (PreparedStatement) connection.prepareStatement(sql);
60
61
62 //设置从前台取出来的参数
63 ps.setString(1,"username");
64 ps.setString(2,"userpass");
65 //执行查询得到结果集
66 rs=ps.executeQuery();
67 //判断结果
68 if(rs.next()){
69 out.print("login success");
70 }else {
71 out.print("login fail");
72 }
73
74 } catch (Exception e) {
75
76 e.printStackTrace();
77 }finally {
78
79 try {
80 rs.close();
81 ps.close();
82 connection.close();
83 } catch (SQLException e) {
84 // TODO Auto-generated catch block
85 e.printStackTrace();
86 }
87
88 }
89 }

login.jsp页面:

 1 <body>
2 <!--
3 action:当前表单提交的那个路径
4 method:当前表单提交的方式
5 name:对应我们的servlet去获取前台的值
6
7 -->
8 <form action="LoginServlet" method="get">
9
10 用户名:<input name="username" type="text"/>
11 密码:<input name="userpass" type="password"/>
12
13 <!-- 默认是submit -->
14 <button>提交</button>
15 </form>
16 </body>

结果:

java-web与jdbc 的使用的更多相关文章

  1. java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)

    一.Jdbc访问数据库步骤通俗解释(吃饭) 1)加载驱动 Class.forName(“com.microsoft.jdbc.sqlserver.SQLServer”); 2) 与数据库建立连接 Co ...

  2. Java Web(十) JDBC的增删改查,C3P0等连接池,dbutils框架的使用

    前面做了一个非常垃圾的小demo,真的无法直面它,菜的抠脚啊,真的菜,好好努力把.菜鸡. --WH 一.JDBC是什么? Java Data Base Connectivity,java数据库连接,在 ...

  3. Java Web(九) JDBC及数据库连接池及DBCP,c3p0,dbutils的使用

    DBCP.C3P0.DBUtils的jar包和配置文件(百度云盘):点我下载 JDBC JDBC(Java 数据库连接,Java Database Connectify)是标准的Java访问数据库的A ...

  4. java web程序 jdbc连接数据库错误排查方法

    学习jsp.我遇到了麻烦,我总是看不懂500错误,因为每次都显示整个页面的错误,都是英文 我看不懂,后来,把他弄烦了,我也烦了,比起学习java.那个异常可以很简单的就知道.现在解决 了第一个问题,5 ...

  5. [Java Web学习]JDBC事务处理

    1. Spring中加入数据库的bean <bean id="dataSource" class="org.apache.commons.dbcp.BasicDat ...

  6. Java Web编程的主要组件技术——JDBC

    参考书籍:<J2EE开源编程精要15讲> JDBC(Java DataBase Connectivity)是Java Web应用程序开发的最主要API之一.当向数据库查询数据时,Java应 ...

  7. 数据库面试技巧,通过JDBC展示自己专业性,摘自java web轻量级开发面试教程

    这篇文章是我之前写的博文 数据库方面的面试技巧,如何从建表方面展示自己能力 和 面试技巧,如何通过索引说数据库优化能力,内容来自Java web轻量级开发面试教程是一个系列的,通过面试官的视角和大家分 ...

  8. JDBC在Java Web中的应用

    JDBC在Java Web中的应用 制作人:全心全意 在Java Web开发中,JDBC的应用十分广泛.通常情况下,Web程序操作数据库都是通过JDBC实现,即使目前数据库方面的开源框架层出不穷,但其 ...

  9. 高效 Java Web 开发框架 JessMA v3.5.1

    JessMA 是功能完备的高性能 Full-Stack Web 应用开发框架,内置可扩展的 MVC Web 基础架构和 DAO 数据库访问组件(内部已提供了 Hibernate.MyBatis 与 J ...

  10. 高效 Java Web 开发框架 JessMA v3.4.1

    JessMA 是功能完备的高性能 Full-Stack Web 应用开发框架,内置可扩展的 MVC Web 基础架构和 DAO 数据库访问组件(内部已提供了 Hibernate.MyBatis 与 J ...

随机推荐

  1. ubuntu 22.04 deskop 无法打开terminal

    系统语言设置的问题,改为汉语即可

  2. python包管理工具pip使用手册

    pip是什么? pip 是 Python 标准库管理器,也就是一个工具让你安装不同的类库来使用. 当你要安装某些类库时,都会使用 pip,那 pip 除了安装类库之外,还能做什么呢? 首先,我们进入 ...

  3. PaddleOCR学习笔记3-通用识别服务

    今天优化了下之前的初步识别服务的python代码和html代码. 采用flask + paddleocr+ bootstrap快速搭建OCR识别服务. 代码结构如下: 模板页面代码文件如下: uplo ...

  4. vue实现不同用户权限的方法

    Vue 实现不同用户权限的方法 在项目中,实现不同用户的权限控制是常见的需求也是常见的功能模块,例如管理系统中不同角色(管理员.普通用户等)应有不同的访问权限,小程序.App等在不同角色登入的时候显示 ...

  5. FireDAC的数据库的FDConnect

    通常,我们设置一个ini文件,按照FDConnection的ini格式要求配置好.然后直接调用通知连接数据库是否OK. FireDAC可以通过FDManager管理ini文件简单实现.即由FDConn ...

  6. verilog利用线性插值实现正弦波生成器(dds)

    verilog实现线性插值实现正弦波生成器 ​ 最近在项目上遇到一个需要在低资源FPGA上实现FFT逻辑的项目,而且要求实现窗函数.对于窗函数来说,莫非是实现正弦波生成器,正弦波生成器可以利用DDS模 ...

  7. Java+Appium+Junit实现app自动化demo

    1.新建maven工程和引入库 步骤参考https://www.cnblogs.com/wanyuan/p/16408758.html 2.编写代码 代码如下: import org.junit.Af ...

  8. C#使用Blazor编译WebAssembly供前端调用(一),关于SkiaSharp相关问题

    目前信创热潮开始掀起,而C#很多行业开发的都是桌面端,迁移到网页端常常会因为很多库不支持或者不友好导致项目一直卡着. 最近一直在网上找灵感,偶然发现Web Assembly,一开始我还没不知道这是什么 ...

  9. H5 ios端微信浏览器下-底部工具固定方法

    在外层配置css position: fixed; width: 100%; top: 0px; bottom: 0px; overflow: auto; 结束

  10. DPDI(Dispatch PDI)kettle调度管理平台升级预告

    亲爱的DPDI用户们,久等了!Dispatch PDI全新升级,焕然一新的UI页面计划于2025.03.23正式上线.这一次,我们精心打磨每一个细节,只为给您带来前所未有的丝滑体验,让每一次浏览都成为 ...