代码生成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架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.他必须对开发技术非常了解,并且 ...
随机推荐
- Fastjson的SerializerFeature序列化属性
Fastjson的SerializerFeature序列化属性 fastJson在key的value为null时,默认是不显示出这个字段的 JSONObject.toJSONString(Object ...
- Centos7 系统初试化脚本
系统初始化设置 # 设置主机名,永久修改,再次登陆生效 hostnamectl set-hostname xxxxx # 安装eprl源,常用命令 yum install -y wget && ...
- C++学习笔记 之 运算符
用来执行特定的数字或逻辑操作,C++主要提供的运算符如下: 算数运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 杂项运算符 算数运算符: 主要运算符:+(加).-(减) .*(乘) ./(除) ...
- C++ 洛谷 2014 选课 from_树形DP
洛谷 2014 选课 没学树形DP的,看一下. 首先要学会多叉树转二叉树. 树有很多种,二叉树是一种人人喜欢的数据结构,简单而且规则.但一般来说,树形动规的题目很少出现二叉树,因此将多叉树转成二叉树就 ...
- idea创建springcloud主工程和springboot子项目
创建主工程,选择file-new-project,选择maven,直接next 填写GroupId包名,ArtifactId项目名,next-finish 创建子项目springboot,项目右击-n ...
- Codeforces Gym101518E:The Pharaoh's Curse(BFS + 离散化)
题目链接 题意 给出一个n*m的地图,人的当前位置是'S',还有不超过两个的箱子'X',任意多个按钮'B',不超过100个可以走的点'.',还有一个在边界的出口'E',当且仅当所有的按钮都被箱子盖住的 ...
- iOS邓白氏编码申请流程及苹果账号组织名称变更
邓氏编码(D-U-N-S®Number,是Data Universal Numbering System的缩写).它是一个独一无二的9位数字全球编码系统,相当于企业的身份识别码 (就像是个人的身份证) ...
- Redis在.net 环境下的使用
Redis概念 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,和Memcached类似,它支持存储的value类型相对更多,包括st ...
- [ZJOI2006]物流运输 题解
[ZJOI2006]物流运输 时间限制: 10 Sec 内存限制: 162 MB 题目描述 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个 ...
- I/O:FileLock
FileLock: /* 文件锁定要么是独占的,要么是共享的.共享锁定可阻止其他并发运行的程序获取重叠的 独占锁定,但是允许该程序获取重叠的共享锁定.独占锁定则阻止其他程序获取任一类型的重叠锁 定.一 ...