概述
**本例子简单说明**
通过C3P0Util工具类得到数据库连接,然后创建一个Person实体,最后在PersonTest中利用nutz测试数据添加功能
**项目结构图**
**开始项目**
导入相关jar包
c3p0-0.9.1.2.jar
mysql-connector-java-5.0.8-bin.jar
nutz-1.b.50.jar创建数据库连接工具类
C3P0Util.java
c3p0-config.xml
**c3p0-config.xml代码如下:**
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<default-config>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/nutz</property>
<property name="user">root</property>
<property name="password">root</property>
<property name="acquireIncrement">5</property>
<property name="initialPoolSize">10</property>
<property name="minPoolSize">5</property>
<property name="maxPoolSize">20</property>
</default-config>
</c3p0-config>
**C3P0Util.java代码如下:**
package utils;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.DataSource;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class C3P0Util {
private static DataSource ds = new ComboPooledDataSource();
public static DataSource getDataSource() {
return ds;
}
/**
* 用于从池中获取连接
*
* @return
*/
public static synchronized Connection getConneciton() {
try {
return ds.getConnection();
} catch (SQLException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
// 关闭资源
public static void release(ResultSet rs, Statement st, Connection con) {
try {
if (rs != null) {
rs.close();
rs = null;// 目的是让回收器立即进行垃圾回收
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (st != null) {
st.close();
st = null;
}
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (con != null) {
con.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
创建实体类
Person.java
**Person.java代码如下:**
package com.zzh.demo.Person;
import org.nutz.dao.entity.annotation.Column;
import org.nutz.dao.entity.annotation.Id;
import org.nutz.dao.entity.annotation.Name;
import org.nutz.dao.entity.annotation.Table;
@Table("t_person")
// 生命了Person对象的数据表
public class Person {// 无需继承任何Nuts的类
@Id
// 表示该字段为一个自增长的Id,是数据库表中自增!!
private int id;
@Name
// 表示该字段可以用来标识此对象,或者是字符型主键,或者是唯一性的约束
private String name;
@Column
// 表示该对象属性可以映射到数据库里作为一个字段
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
测试类
PersonTest.java
package test;
**PersonTest.java的代码如下:**
import org.nutz.dao.Dao;
import org.nutz.dao.impl.NutDao;
import utils.C3P0Util;
import com.zzh.demo.Person.Person;
public class PersonTest {
public static void main(String[] args) {
Dao dao = new NutDao(C3P0Util.getDataSource());
Person p = new Person();
p.setName("张三");
p.setAge(22);
dao.insert(p);
}
}
**其实Nutz也实现不少数据库链接的方法**
感兴趣的,猛踩这里
[Nutz](http://www.nutzam.com/ "Nutz官网")
最后
以上就是清新鞋垫为你收集整理的Nutz学习---连接操作数据库入门例子的全部内容,希望文章能够帮你解决Nutz学习---连接操作数据库入门例子所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复