开始学习:

round 1:(一开始学习当然还是要一步一步学习的啦,哪有什么一步登天!!!)

a.准备工作:1.eclipse,mysql(这两个软件肯定要的啦,不然学什么把它们连接起来)

2.加载驱动jar包:mysql-connector-java-5.1.40.jar(我用的是这个版本,你们随意!)

b.创建工程,把jar包导进工程中的lib下面,然后右击build path把jar包添加进工程中

c.创建数据库books,添加相关字段

d.创建与数据库的连接及查看数据库信息

  1. import java.sql.Connection;
  2. import java.sql.DriverManager;
  3. import java.sql.PreparedStatement;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;
  7.  
  8. /*
  9. *连接数据库
  10. *加载驱动
  11. *
  12. * */
  13.  
  14. public class Jdbcutil {
  15. // 数据库url:jdbc:数据库名://本地ip:端口号/创建的数据库名字
  16. private static String url = "jdbc:mysql://127.0.0.1:3306/books";
  17. // 连接数据库用户名
  18. private static String user = "root";
  19. //连接数据库密码
  20. private static String password = "123456";
  21.  
  22. // 创建连接method
  23. public static Connection getConnection() {
  24. Connection conn = null;
  25. if (conn == null) {
  26. //加载驱动
  27. try {
  28. Class.forName("com.mysql.jdbc.Driver");
  29. conn = DriverManager.getConnection(url, user, password);
  30. } catch (Exception e) {
  31. e.printStackTrace();
  32. }
  33. }
  34. return conn;
  35. }
  36.  
  37. //关闭连接
  38. public static void closeAll(Connection conn, Statement stmt, ResultSet rs) {
  39. if (rs != null) {
  40. try {
  41. rs.close();
  42. } catch (Exception e) {
  43. e.printStackTrace();
  44. }
  45. }
  46.  
  47. if (stmt != null) {
  48. try {
  49. stmt.close();
  50. } catch (Exception e) {
  51. e.printStackTrace();
  52. }
  53. }
  54.  
  55. if (conn != null) {
  56. try {
  57. conn.close();
  58. } catch (Exception e) {
  59. e.printStackTrace();
  60. }
  61. }
  62. }
  63.  
  64. public static int executeUpdate(String sql, Object[] param) {
  65. Connection conn = getConnection();// 创建连接
  66. PreparedStatement pstmt = null;//sql语句预处理
  67. int num = 0;
  68.  
  69. try {
  70. pstmt = conn.prepareStatement(sql);
  71. if (param != null) {
  72. for (int i = 0; i < param.length; i++) {
  73. pstmt.setObject(i + 1, param[i]);
  74. }
  75. }
  76. num = pstmt.executeUpdate();
  77. } catch (SQLException e) {
  78. e.printStackTrace();
  79. } finally {
  80. closeAll(conn, pstmt, null);
  81. }
  82. return num;
  83. }
  84.  
  85. //对数据库做查询处理
  86. public static void main(String[]args) {
  87.  
  88. try {
  89. Connection conn=getConnection();
  90. String sql="select * from book ";
  91. PreparedStatement p=conn.prepareStatement(sql);
  92. ResultSet rs=p.executeQuery();//返回的结果集
  93.  
  94. while(rs.next()) {
  95. System.out.print(rs.getInt(1)+"\t");
  96. System.out.print(rs.getString(2)+" \t");
  97. System.out.print(rs.getString(3)+" \t");
  98. System.out.print(rs.getString(4)+"\t");
  99. System.out.println("\n");
  100. }
  101.  
  102. //关闭连接
  103. closeAll(conn,p,rs);
  104. System.out.println("关闭连接");
  105. } catch (Exception e) {
  106. // TODO Auto-generated catch block
  107. e.printStackTrace();
  108. }
  109. }
  110. }

e.查询结果展示

round 2:(可以用映射的方法反向推出连接数据库所需代码,刚好有大佬写了这样一个api)

a.准备工作:1.同样需要数据库连接jar包

2.关于Mybatis-Generator的下载可以到这个地址:https://github.com/mybatis/generator/releases

b.Mybatis-Generator大概架构

c.想要它生成代码在哪里,就修改配置文件xml的位置,完成后启动项目即可

  1. /*截取代码片段,修改位置就是红色标记处*/
  2. <!-- pojo mapper接口 mapper.xml -->
  3. <!--通用代码生成器插件 -->
  4. <!--mapper接口 -->
  5. <!-- ../maker-assistant-service/src/test/java -->
  6. <!-- 生成mapper的日志 -->
  7. <plugin type="tk.mybatis.mapper.generator.TemplateFilePlugin">
  8. <property name="targetProject"
  9. value="src/main/java" />
  10. <property name="targetPackage"
  11. value="net.seehope.springboot.mapper" />
  12. <property name="templatePath" value="generator/mapper.ftl" />
  13. <property name="mapperSuffix" value="Mapper" />
  14. <property name="fileName"
  15. value="${tableClass.shortClassName}${mapperSuffix}.java" />
  16. </plugin>

代码生成java连接数据库的所需代码(超详细)的更多相关文章

  1. Java连接数据库 #06# SQL与代码分离(精化版本)

    索引 DAO层依赖关系草图 应用示例 接Java连接数据库#05#,对代码进行改进. DAO层依赖关系草图 应用示例(只需3步!) 1.首先定义接口类: package org.sample.shop ...

  2. Java连接数据库 #05# SQL与代码分离

    索引 读取html中的SQL语句 缺陷总结 在Java连接数据库 #04#里大概是这样放sql语句的: package org.sample.shop.db.queryrunner; import o ...

  3. Keras代码超详细讲解LSTM实现细节

    1.首先我们了解一下keras中的Embedding层:from keras.layers.embeddings import Embedding: Embedding参数如下: 输入尺寸:(batc ...

  4. 以面向对象的思想实现数据表的添加和查询,JDBC代码超详细

    以面向对象的思想编写JDBC程序,实现使用java程序向数据表中添加学生信息,并且可以实现给定身份证号查询学生信息或给定准考证号查询学生信息. 创建的数据表如下: CREATE TABLE EXAMS ...

  5. Java基础系列3:多线程超详细总结

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 1.线程概述 几乎所 ...

  6. Java基础系列8——IO流超详细总结

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 在初学Java时,I ...

  7. Java中的equals()和hashCode() - 超详细篇

    前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的equals()和hashCode() - 详细篇>,希望对大家有帮助,谢谢 文章纯属原创,个人总结难免有差错,如果有,麻烦在评论 ...

  8. Java Web 环境搭建步骤(超详细,包括前期安装步骤)

    Java Web 环境搭建步骤 安装对应版本的JDK 配置环境变量 本人安装的路径是C盘,在path中加入C:\Program Files\Java\jdk1.8.0_65\bin 测试配置成功,cm ...

  9. Java架构师必看,超详细的架构师知识点分享!

    在Java程序员行业中,有不少Java开发人员的理想是成为一名优秀的Java架构师,Java架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.他必须对开发技术非常了解,并且 ...

随机推荐

  1. 【设计模式】结构型04桥接模式(Bridge Pattern)

    学习地址:http://www.runoob.com/design-pattern/bridge-pattern.html 桥接模式(Bridge Pattern) 桥接模式(Bridge patte ...

  2. 【Idea】JUnit单元测试%MODULE_WORKING_DIR%' does not exist

    Idea执行单元测试时报错:上午9:35 Error running 'MobileMessageImplTest.java': Cannot start process, the working d ...

  3. 编译php扩展

    在php编译安装好的情况下php扩展编译 php的很多模块都是以php的扩展形式来进行的.所以在php安装好的环境下需要用到之前安装时没有编译安装的php扩展的时候,这个时候编译安装php扩展就显得尤 ...

  4. Python向FTP服务器上传文件

    上传 代码示例: #!/usr/bin/python # -*- coding:utf-8 -*- from ftplib import FTP ftp = FTP() # 打开调试级别2, 显示详细 ...

  5. Ruby字符串(1):String基本用法

    String字符串 字符串由String类提供,除了直接使用单双引号或其它字面量创建字符串,也可以使用String.new()方法来创建. a = "hello" b = Stri ...

  6. EXPLAIN说明

    列名 类型 解释 id   SELECT语句的ID编号,优先执行编号较大的查询,如果编号相同,则从上向下执行 select_type SIMPLE 一条没有UNION或子查询部分的SELECT语句 P ...

  7. XAML与C#与WPF三者到底有什么关系?

    XAML是.NET体系开发程序或者网页时前台编程的一种布局方式或者说开发语言,可以比较自由的用标签的方式进行布局,借鉴了HTML和XML等语言的风格,并且加入了一些动画等的实现.C#则是后台逻辑开发用 ...

  8. leetcode 136 Single Number bBt Option

    Linked Url:https://leetcode.com/problems/single-number/ Given a non-empty array of integers, every e ...

  9. c++学习书籍推荐《清华大学计算机系列教材:数据结构(C++语言版)(第3版)》下载

    百度云及其他网盘下载地址:点我 编辑推荐 <清华大学计算机系列教材:数据结构(C++语言版)(第3版)>习题解析涵盖验证型.拓展型.反思型.实践型和研究型习题,总计290余道大题.525道 ...

  10. Jenkins+SVN+Maven+shell 自动化部署实践

      JAVA环境中利用Jenkins+svn+maven进行自动化部署实践   一. 前言2 1.介绍jenkins2 1.本地项目打包2 2.通过secureCRT工具,手动传输到服务器2 3.然后 ...