栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring实现连接MySQL数据传输

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring实现连接MySQL数据传输

步骤大概就是:连接MySQL,执行MySQL语句,生成数据与打印结果。

记得要先导入相关的 jar包到项目库中!!!

记得要先导入相关的 jar包到项目库中!!!

记得要先导入相关的 jar包到项目库中!!!

大概有:spring的基础包、commons-logging-1.2.jar、mysql-connector-java-5.1.45-bin.jar,版本可以自定。

 

 举个例子:

1.首先创建并配置.xml文件,实现连接数据库等功能。
    
    
    

    
    
        
        
        
        
        
        
        
        
    

    
    
        
    

    
    
        
    

    
    
2.在实体层entity包中创建实体类MyUser,并完善其属性方法:
package jdbcBao.entity;

public class MyUser {
    private Integer uid;
    private String uname;
    private String usex;
    public Integer getUid() {
        return uid;
    }

    public void setUid(Integer uid) {
        this.uid = uid;
    }

    public String getUname() {
        return uname;
    }

    public void setUname(String uname) {
        this.uname = uname;
    }

    public String getUsex() {
        return usex;
    }

    public void setUsex(String usex) {
        this.usex = usex;
    }

    //省略set和get方法
    public String toString() {
        return "myUser [uid=" + uid +", uname=" + uname + ", usex=" + usex + "]";
    }

}
3.在数据访问层dao包创建TestDao接口和TestDaoImpl类(注解):
package jdbcBao.dao;

import java.util.List;
import jdbcBao.entity.MyUser;

public interface TestDao {
    public int update(String sql, Object[] param);
    public List query(String sql, Object[] param);
}
package jdbcBao.dao;

import jdbcBao.entity.MyUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import java.util.List;

@Repository      //数据访问层
public class TestDaoImpl implements TestDao{
    @Autowired   //自动填充
    //使用配置类中的JDBC模板
    private JdbcTemplate jdbcTemplate;
    
    @Override
    public int update(String sql, Object[] param) {
        return jdbcTemplate.update(sql, param);
    }
    
    @Override
    public List query(String sql, Object[] param) {
        RowMapper rowMapper = new BeanPropertyRowMapper(MyUser.class);
        return jdbcTemplate.query(sql, rowMapper);
    }
}

4.在业务逻辑层service包创建TestService接口和TestServiceImpl类(注解):
package jdbcBao.service;

public interface TestService {
    public void testJDBC();
}

package jdbcBao.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import jdbcBao.dao.TestDao;

@Service  //业务逻辑层
public class TestServiceImpl implements TestService{
    @Autowired
    public TestDao testDao;
    @Override
    public void testJDBC () {
        String insertSql = "insert into user values(null,?,?)";
        //数组param的值与insertSql语句中?一一对应
        Object param1[] = {"薛之谦", "男"};
        Object param2[] = {"古力娜扎", "女"};
        Object param3[] = {"肖战", "男"};
        Object param4[] = {"赵丽颖", "女"};
        String insertSql1 = "insert into user values(?,?,?)";
        Object param5[] = {1,"刘亦菲", "女"};
        Object param6[] = {1,"那英", "女"};
        try {
            //添加用户
            testDao.update(insertSql, param1);
            testDao.update(insertSql, param2);
            testDao.update(insertSql, param3);
            testDao.update(insertSql, param4);
            System.out.println("添加用户成功!");
            //添加两个ID相同的用户,出现唯一性约束异常,使事务回滚。
            testDao.update(insertSql1, param5);
            testDao.update(insertSql1, param6);
            System.out.println("事务回滚完成!");
        } catch (Exception e) {
            System.out.println("主键重复(异常),事务回滚。");
            //TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
        }
    }

}


5.在测试test包中创建TestJDBC类:
package jdbcBao.test;

import jdbcBao.service.TestService;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestJDBC {
    public static void main(String[] args) {
        ClassPathXmlApplicationContext cpxac = new ClassPathXmlApplicationContext("applicationContext.xml");
        TestService t1 = (TestService) cpxac.getBean("testServiceImpl");
        t1.testJDBC();
    }
}
运行结果如下:

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/872386.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号