代码生成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架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.他必须对开发技术非常了解,并且 ...
随机推荐
- 【Linux杂记】screen命令
screen命令: 解决的问题:有些进程启动后,一旦断开ssh容易断掉,所以新建一个screen(可以理解成窗口)并行运行 守护进程的方式:linux守护进程的方式实现开机启动某些特定的程序 屏幕命令 ...
- 2019年6月份,阿里最新Java高频面试真题汇总,仅供参考(附福利)
目录 技术一面(23问) 技术二面(3大块) JAVA开发技术面试中可能问到的问题(17问) JAVA方向技术考察点(33快) 项目实战(7大块) 必会知识(48点) 面试小技巧 注意事项 1. 阿里 ...
- 并发编程-concurrent指南-阻塞队列-数组阻塞队列ArrayBlockingQueue
ArrayBlockingQueue类是实现了BlockingQueue. ArrayBlockingQueue是一个有界的阻塞队列,其内部实现是将对象放在一个数组中. 放入元素方法: (1) add ...
- Gym 101257B:2Trees(DFS+思维)
http://codeforces.com/gym/101257/problem/B 题意:给出两棵叶子数一样的树,在将叶子合并之后,对这个图进行染色,相邻的结点颜色不能相同,问最少需要染的颜色数,并 ...
- iOS 矢量图pdf替换2倍3倍图
一.在开发中矢量图的使用大大提高设计的切图效率! ios 中可以用pdf替换现在的2倍3倍图(1倍图已经忽略) 1.将pdf矢量图拖进工程Assets.xcassets中 2.按照步骤操作 3.矢量图 ...
- Python中文件的读写操作
文件操作基本流程: 1. 介绍 计算机系统是由计算机硬件,操作系统,和应用程序三部分组成. 内存 存放不持久 硬盘 可以使数据持久化 文件操作 数据持久化的一种 全栈开发 框架类 2. 文件的操作 ...
- scrapy基础知识之将item写入JSON文件:
pipelines.py import json class xxPipeline(object): def __init__(self): self.filename=ope ...
- 如何进行高效的源码阅读:以Spring Cache扩展为例带你搞清楚
摘要 日常开发中,需要用到各种各样的框架来实现API.系统的构建.作为程序员,除了会使用框架还必须要了解框架工作的原理.这样可以便于我们排查问题,和自定义的扩展.那么如何去学习框架呢.通常我们通过阅读 ...
- 快速掌握mongoDB(四)—— C#驱动MongoDB用法演示
前边我们已经使用mongo shell进行增删查改和聚合操作,这一篇简单介绍如何使用C#驱动MongoDB.C#驱动MongoDB的本质是将C#的操作代码转换为mongo shell,驱动的API也比 ...
- 高性能javascript-总结(一)
性能优化 第一章:加载和执行 总结: 将所有<script>标签放到页面底部.这能确保在脚本执行前页面已经渲染了. 合并脚本.<script>标签越少,加载越快,响应速度也更迅 ...