【javaEE】(2)Spring的使用 二

1:需要工具

(1)MySql 8.0

不清楚的可以通过phpstudy进行协助安装

https://www.xp.cn/download.html

**原本电脑内有mysql不同的版本的需要先将原本的mysql卸载,数据重要的记得先备份数据!!!

javaEE_phpstudy使用_1 javaEE_phpstudy使用_2

查看数据库密码

javaEE_phpstudy使用_3

(2) Navicat

去网上下载最新版,破解的教程很容易就能搜索到。也可以看我转发的另外一个帖子,里面会提到。

下载安装好后点击 连接,然后选择 MySql,连接名随便写,用户名填写root,密码可以通过phpstudy查看(自己安装的一定记好密码)

然后右键自己新建的连接,选择新建数据库,填写数据库名字,然后字符集选择utf-8。

然后新建一个person3表,把id的设置为自增。(对应之前创建的Person类就行,如果是自己创建的数据库,表的逻辑能理清也可以自己弄)

2:增加依赖包

(在上一次依赖包的基础上增加而不是覆盖!!!)

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>8.0.20</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-jdbc</artifactId>
  <version>5.3.8</version>
</dependency>
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-tx</artifactId>
  <version>5.3.8</version>
</dependency>

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-aop</artifactId>
  <version>5.3.8</version>
</dependency>

3:用spring创建对象

<bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" id="dataSource">
    <!-- 1.1.数据库驱动 -->
    <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>
    <!-- 1.2.连接数据库的url -->
    <property name="url" value="jdbc:mysql://localhost:3306/spring?characterEncoding=utf8&amp;serverTimezone=UTC"/>
    <!-- 1.3.连接数据库的用户名 -->
    <property name="username" value="root"></property>
    <!-- 1.4.连接数据库的密码 -->
    <property name="password" value="root"></property>

</bean>

<bean class="org.springframework.jdbc.core.JdbcTemplate" id="jdbcTemplate">
    <property name="dataSource" ref="dataSource"/>

</bean>
创建DriverManagerDataSource和JdbcTemplate对象

DriverManagerDataSource:是一种用于连接数据库的对象。

JdbcTemplate:关联了前者的父类的接口(回忆设计模式种的关联关系!),主要的作用是连接数据库,并对数据库进行基本的增删改查的操作。

*这里不能使用注解生成,因为使用注解生成的话需要修改依赖包内的源代码,可能会造成不便。

4:DAO文件

Dao是专门用于连接数据库的类

package com.spring;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;

@Component
public class PersonDao {

    @Autowired
    JdbcTemplate jdbcTemplate;

    public void addPerson(String name,int age){
        jdbcTemplate.update("INSERT INTO person3 values (null,?,?)",age,name);
    }
}

5:更改主函数App

实例化Dao的对象,调用他的增加数据的方法。

PersonDao personDao = (PersonDao) applicationContext.getBean("personDao");
personDao.addPerson("test123",21);

执行一下该文件,就能用Navicat查看到数据库中已经多了这样的一个数据了。

6:一些可能遇到的错误

中间可能遇到一些问题,比如找不到personDao的问题遇到的人比较多。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jp30aXsk-1632801430094)(G:\图片\临时图片存储\javaEE_连接数据库_1.png)]

解决方法:检查自己有没有添加相应位置的注解,记得别忘了在xml中添加扫描语句(扫描详细见上一篇文章)

7:扩展

增删改的功能基本都一样,上面实现了增加的功能,基本上依葫芦画瓢就能实现了。

这里讲一些有些许不同的查询功能。

1:在DAO文件中创建方法
public List<Person> getList(String name){
    RowMapper<Person> personRowMapper = new BeanPropertyRowMapper<>(Person.class);
    List<Person> personList = jdbcTemplate.query("select * from person3 where name = ?",personRowMapper,name);
    return personList;
}

导入list的术后选择 java.util.List;

2:在主函数App内加测试语句
List<Person> personList = personDao.getList("test123");
for(Person person:personList){
    System.out.println(person.getName()+"     "+person.getAge());
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值