代码生成java连接数据库的所需代码(超详细)
开始学习:
round 1:(一开始学习当然还是要一步一步学习的啦,哪有什么一步登天!!!)
a.准备工作:1.eclipse,mysql(这两个软件肯定要的啦,不然学什么把它们连接起来)
2.加载驱动jar包:mysql-connector-java-5.1.40.jar(我用的是这个版本,你们随意!)
b.创建工程,把jar包导进工程中的lib下面,然后右击build path把jar包添加进工程中

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



d.创建与数据库的连接及查看数据库信息
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 Jdbcutil {
// 数据库url:jdbc:数据库名://本地ip:端口号/创建的数据库名字
private static String url = "jdbc:mysql://127.0.0.1:3306/books";
// 连接数据库用户名
private static String user = "root";
//连接数据库密码
private static String password = "123456"; // 创建连接method
public static Connection getConnection() {
Connection conn = null;
if (conn == null) {
//加载驱动
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();
}
}
return conn;
} //关闭连接
public static void closeAll(Connection conn, Statement stmt, ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (Exception e) {
e.printStackTrace();
}
} if (stmt != null) {
try {
stmt.close();
} catch (Exception e) {
e.printStackTrace();
}
} if (conn != null) {
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
} public static int executeUpdate(String sql, Object[] param) {
Connection conn = getConnection();// 创建连接
PreparedStatement pstmt = null;//sql语句预处理
int num = 0; try {
pstmt = conn.prepareStatement(sql);
if (param != null) {
for (int i = 0; i < param.length; i++) {
pstmt.setObject(i + 1, param[i]);
}
}
num = pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
closeAll(conn, pstmt, null);
}
return num;
} //对数据库做查询处理
public static void main(String[]args) { try {
Connection conn=getConnection();
String sql="select * from book ";
PreparedStatement p=conn.prepareStatement(sql);
ResultSet rs=p.executeQuery();//返回的结果集 while(rs.next()) {
System.out.print(rs.getInt(1)+"\t");
System.out.print(rs.getString(2)+" \t");
System.out.print(rs.getString(3)+" \t");
System.out.print(rs.getString(4)+"\t");
System.out.println("\n");
} //关闭连接
closeAll(conn,p,rs);
System.out.println("关闭连接");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
e.查询结果展示

round 2:(可以用映射的方法反向推出连接数据库所需代码,刚好有大佬写了这样一个api)
a.准备工作:1.同样需要数据库连接jar包
2.关于Mybatis-Generator的下载可以到这个地址:https://github.com/mybatis/generator/releases
b.Mybatis-Generator大概架构

c.想要它生成代码在哪里,就修改配置文件xml的位置,完成后启动项目即可
/*截取代码片段,修改位置就是红色标记处*/
<!-- pojo mapper接口 mapper.xml -->
<!--通用代码生成器插件 -->
<!--mapper接口 -->
<!-- ../maker-assistant-service/src/test/java -->
<!-- 生成mapper的日志 -->
<plugin type="tk.mybatis.mapper.generator.TemplateFilePlugin">
<property name="targetProject"
value="src/main/java" />
<property name="targetPackage"
value="net.seehope.springboot.mapper" />
<property name="templatePath" value="generator/mapper.ftl" />
<property name="mapperSuffix" value="Mapper" />
<property name="fileName"
value="${tableClass.shortClassName}${mapperSuffix}.java" />
</plugin>
代码生成java连接数据库的所需代码(超详细)的更多相关文章
- Java连接数据库 #06# SQL与代码分离(精化版本)
索引 DAO层依赖关系草图 应用示例 接Java连接数据库#05#,对代码进行改进. DAO层依赖关系草图 应用示例(只需3步!) 1.首先定义接口类: package org.sample.shop ...
- Java连接数据库 #05# SQL与代码分离
索引 读取html中的SQL语句 缺陷总结 在Java连接数据库 #04#里大概是这样放sql语句的: package org.sample.shop.db.queryrunner; import o ...
- Keras代码超详细讲解LSTM实现细节
1.首先我们了解一下keras中的Embedding层:from keras.layers.embeddings import Embedding: Embedding参数如下: 输入尺寸:(batc ...
- 以面向对象的思想实现数据表的添加和查询,JDBC代码超详细
以面向对象的思想编写JDBC程序,实现使用java程序向数据表中添加学生信息,并且可以实现给定身份证号查询学生信息或给定准考证号查询学生信息. 创建的数据表如下: CREATE TABLE EXAMS ...
- Java基础系列3:多线程超详细总结
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 1.线程概述 几乎所 ...
- Java基础系列8——IO流超详细总结
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 在初学Java时,I ...
- Java中的equals()和hashCode() - 超详细篇
前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的equals()和hashCode() - 详细篇>,希望对大家有帮助,谢谢 文章纯属原创,个人总结难免有差错,如果有,麻烦在评论 ...
- Java Web 环境搭建步骤(超详细,包括前期安装步骤)
Java Web 环境搭建步骤 安装对应版本的JDK 配置环境变量 本人安装的路径是C盘,在path中加入C:\Program Files\Java\jdk1.8.0_65\bin 测试配置成功,cm ...
- Java架构师必看,超详细的架构师知识点分享!
在Java程序员行业中,有不少Java开发人员的理想是成为一名优秀的Java架构师,Java架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.他必须对开发技术非常了解,并且 ...
随机推荐
- JS中 【“逻辑运算”,“面试题:作用域问题”,“dom对象”】这些问题的意见见解
1.逻辑运算 || && ! ||:遇到第一个为true的值就中止并返回 &&:遇到第一个为false的值就中止并返回,如果没有false值,就返回最后一个不是fa ...
- node.js的异步I/O、事件驱动、单线程
nodejs的特点总共有以下几点 异步I/O(非阻塞I/O) 事件驱动 单线程 擅长I/O密集型,不擅长CPU密集型 高并发 下面是一道很经典的面试题,描述了node的整体运行机制,相信很多人都碰到了 ...
- vs 编译说明
静态编译/MT,/MTD 是指使用libc和msvc相关的静态库(lib). 动态编译,/MD,/MDd是指用相应的DLL版本编译. 其中字母含义 d:debug m:multi-th ...
- python的数据类型之字符串(一)
字符串(str) 双引号或者单引号中的数据,就是字符串. 注意事项 1.反斜杠可以用来转义,使用r可以让反斜杠不发生转义. 2.字符串可以用+运算符连接在一起,用*运算符重复. 3.Python中的字 ...
- 【深入浅出-JVM】(4):编译 jdk
环境 mac,xcode,jdk8,openjdk,autoconf 步骤 安装autoconf brew install autoconf 下载openjdk源码 git clone https:/ ...
- Spring IoC控制反转创建实例
Spring IoC控制反转创建实例写一个配置文件beans.xml,配置文件的约束可以访问:完整链接:https://repo.spring.io/libs-release-local/org/sp ...
- 2019.6.21 NOIP2018提高组模拟题(二)
1.咒语 (curse.pas/c/cpp) [题目描述] 亮亮梦到自己来到了魔法城堡,但一扇巨大的石门阻拦了他通向城堡内的路.正当他沮丧之际,突然发现门上有一处机关,机关上有一张很长的纸条.亮亮拿起 ...
- 如何在vue中监听scroll,从而实现滑动加载更多
首先需要明确3个定义: 文档高度:整个页面的高度 可视窗口高度:你看到的浏览器可视屏幕高度 滚动条滚动高度: 滚动条下滑过的高度 当 文档高度 = 可视窗口高度 + 滚动条高度 时,滚动条正好到底. ...
- 最新 centos7下zabbix 监控redis状态
准备 先准备两台服务器,已经部署好了zabbix-sever和zabbix-agent zabbix-server 192.168.1.70 centos7.2 zabbix-agent 192.16 ...
- Git远程版本库
目前为止,所有的Git操作都是在一个本地版本库中.现在是时候来体验Git分布式的特性了. 说到远程版本库,大家最为熟悉的就是GitHub了,它实际上就相当于一个远程版本库,托管着所有的本地版本库的提交 ...