简明易懂:Spring MVC数据库连接配置 (spring mvc配置数据库连接)

Spring MVC是一款优秀的Web开发框架,它以MVC设计模式为核心,通过注解和配置文件将Controller、Service、DAO、数据源、事务等功能进行整合,为我们在Web开发中带来了很大的方便。

在Spring MVC中进行数据库操作,需要先进行连接数据库的配置。今天,我们就来介绍一下Spring MVC数据库连接配置的方法。

一、添加依赖

在pom.xml配置文件中添加数据源依赖:

“`

com.alibaba

druid-spring-boot-starter

1.2.6

“`

二、配置数据源

在application.yml(或application.properties)配置文件中添加以下内容:

“`

spring.datasource.url=jdbc:mysql://localhost:3306/test?useSSL=false&characterEncoding=UTF-8&serverTimezone=UTC

spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

“`

其中,url是连接数据库的URL地址,username和password是连接数据库的用户名和密码,driver-class-name是数据库驱动名称。

三、配置MyBatis

如果要使用MyBatis进行数据库操作,需要进行如下配置:

1.添加依赖:

“`

org.mybatis.spring.boot

mybatis-spring-boot-starter

2.1.3

“`

2.在application.yml(或application.properties)配置文件中添加以下内容:

“`

mybatis:

type-aliases-package: com.xxx.xxx.domn

mapper-locations: classpath:mapper/*.xml

“`

其中,type-aliases-package是实体类所在的包名,mapper-locations是Mapper配置文件所在的路径。

四、配置事务管理器

如果需要使用事务管理器,需要进行如下配置:

1.添加依赖:

“`

org.springframework.boot

spring-boot-starter-jdbc

“`

2.在application.yml(或application.properties)配置文件中添加以下内容:

“`

spring.jmx.enabled=true

spring.datasource.continue-on-error=true

spring.datasource.schema=classpath:db/schema.sql

spring.datasource.sql-script-encoding=UTF-8

spring.datasource.initialize=true

spring.datasource.platform=mysql

spring.jpa.hibernate.ddl-auto=none

spring.jpa.show-sql=false

spring.datasource.type: com.alibaba.druid.pool.DruidDataSource

spring.datasource.url=jdbc:mysql://localhost:3306/test?useSSL=false&characterEncoding=UTF-8&serverTimezone=UTC

spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

mybatis:

type-aliases-package: com.xxx.xxx.domn

mapper-locations: classpath:mapper/*.xml

spring.datasource.max-active=20

spring.datasource.initial-size=1

spring.datasource.min-idle=1

spring.datasource.validation-query=select 1

spring.datasource.test-on-borrow=true

spring.datasource.pool-prepared-statements=true

spring.datasource.max-pool-prepared-statement-per-connection-size=20

spring.datasource.filters=stat,wall,log4j

spring.datasource.connection-properties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000

“`

其中,需要注意配置的是事务管理器的类型为com.atomikos.jdbc.AtomikosDataSourceBean,这是Spring Boot默认的事务管理器,需要在类路径下添加如下配置文件:

“`

# jta.properties

com.atomikos.icatch.service=com.atomikos.icatch.standalone.UserTransactionServiceFactory

com.atomikos.icatch.log_base_dir=./tmlog

com.atomikos.icatch.output_dir=./

com.atomikos.icatch.console_file=./tm_console.log

com.atomikos.icatch.console_listeners=com.atomikos.icatch.standalone.ConsoleLogManager

“`

到此,Spring MVC数据库连接配置就介绍完了。希望对大家有所帮助。

相关问题拓展阅读:

  • spring mvc mybatis 整合 大体步骤

spring mvc mybatis 整合 大体步骤

一、简单说明

用到的框架:spring、springmvc,mybatis

开发工具:eclipse,apache-tomcat-6.0.39

jar包管理:maven

开发过程

一、建立工程

1、引入相关jar包:

junit

junit

4.8.1

test

provided, 因为provided表明该包只在编译和测试的时候用–>

javax.servlet

servlet-api

2.5

provided

二、引入mybatis相关内容并测试

1、引入JAR包

UTF-8

yyyyMMddHHmmss

3.3.1

junit

junit

4.8.1

test

provided,因为provided表明该包只在编译和测试的时候用–>

javax.servlet

servlet-api

2.5

provided

org.mybatis

mybatis

${mybatis.version}

mysql

mysql-connector-java

5.1.25

这里面在pom里面使用了 标签重点看一下,在这个环节添加了数据库连接的jar包和mybatis的jar包。这里要想可以操作数据库需要编程式的读取配置文件一般放在classpath下面。这里取名为conf.xml.这个里面主要完成2件事:

a:对数据库4个基本信息的配置, b:引入mapper.xml文件。

下面对这个步骤里面的内容进行详细说明:

1、创建im.fenqi.study.user.entity.User实体对象,这里导入一个lombok插件,这个插件要安装(具体百度),可以不用显示的写set/get方法。

2、创建im/fenqi/study/user/mapper/UserMapper.xml文件,这个里面是对数据库进行操作一般和 im.fenqi.study.user.mapper.UserMapper配对使用,里面注意点。

标签mapper里面的namespace的值就是配对的JAVA类im.fenqi.study.user.mapper.UserMapper

标签resultMap:是为了解决实体类的属性名字和数据库字段名字不一致的问题。主键和其他键是有区别的。

resultMap里面定义的字段和属性在对应的表和实体必须有对应的内容否则会报错。

标签trim:可以处理user(user_id,user_name,password)等问题,里面的子标签为:

prefix:前缀覆盖并增加其内容

suffix:后缀覆盖并增加其内容

prefixOverrides:前缀判断的条件

找到最前面的和条件一样的内容然后变成prefix里面的内容

例:

根据条件判断trim里面的字符串为”AND id=#{id} AND name like #{name}”

找到最前面的AND(prefixOverrides的内容)替换成where(prefix内容)

如果没有prefixOverrides的内容就直接加在前面。

suffixOverrides:后缀判断的条件

和prefixOverrides类似。

标签if:比较简单,

标签sql:

id, user_id,user_name,password

使用场景:

select from user

需要返回的字段很多的时候不用每次都写一遍

3、创建im.fenqi.study.user.mapper.UserMapper类这个和上面的文件是成对出现的,这是一个接口接口里面的方法名和UserMapper.xml里面的id要一致

4、测试类userTest

在本地测试主要使用SqlSession对象二这个对象需要使用SqlSessionFactory对象才能创建,下面先说SqlSessionFactory对象是怎么得到的

a:获取配置文件config.xml的输入流:

String resource = “/conf.xml”;

//从classpath里面寻找

InputStream resourceAsStream = Object.class.getResourceAsStream(resource);

b:获取SqlSessionFactory对象

SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(resourceAsStream);

c:获取SqlSession对象:

SqlSession session = factory.openSession();

d:得到dao层的对象

UserMapper userMapper = session.getMapper(UserMapper.class);

d:插入数据

User user = new User();

user.setUserId(UUID.randomUUID().toString());

user.setUserName(“zw1”);

user.setPassword(“123456”);

int count = userMapper.saveUserInfo(user);

session.commit();

System.out.println(“insert:”+count);

三、引入spring框架并测试

首先需要引入必要的jar包,主要是spring必要的包和spring支持mybatis,jdbc的包

org.springframework

spring-core

${spring.version}

org.springframework

spring-beans

${spring.version}

org.springframework

spring-context

${spring.version}

org.springframework

spring-expression

${spring.version}

org.mybatis

mybatis-spring

1.2.1

org.springframework

spring-jdbc

${spring.version}

这个时候conf.xml这个配置文件已经不需要了,统一在spring.xml里面进行配置

1、配置数据库连接

当然这个配置可以写在properties文件里面(用到再说)

2、spring引入以后主要目的就是利用IOC容器进行创建对象,没有加入spring之前SqlSessionFactory、SqlSession、UserMapper 对象的创建都是我们硬编码实现,spring就是为了解决这些问题,最后直接返回UserMapper 给我们使用。其他的事情都在配置里完成。这里面具体操作流程以后会详细分析

3、创建SqlSessionFactory

创建这个对象需要数据源和mapper.xml配置文件的位置

4、创建UserMapper 对象(这一部分还要重点研究)

需要SqlSessionFactory对象创建SqlSession对象,然后创建UserMapper 对象,所以需要SqlSessionFactory和UserMapper 接口的位置,MapperScannerConfigurer是扫描包,不要每次都创建MapperFactoryBean

5、测试获取对象

ApplicationContext context = new ClassPathXmlApplicationContext(“/spring.xml”);

UserMapper bean = context.getBean(“userMapper”,UserMapper.class);

List userByUser = bean.getUserByUser(null);

6、这个测试还可以使用spring自带的test类

@RunWith(SpringJUnit4ClassRunner.class)

@ContextConfiguration(“/spring.xml”)

public class springtest {

@Autowired

private UserMapper userMapper;

@Test

public void save()

{

User user = new User(“zw1”, 20);

userMapper.save(user);

}

四、引入springmvc框架

首先引入springmvc的JAR包

org.springframework

spring-web

${spring.version}

org.springframework

spring-webmvc

${spring.version}

这个时候需要配置web.xml,也要配置springmvc.xml

1、配置web.xml

添加加载spring.xml的监听器和spring文件路径

org.springframework.web.context.ContextLoaderListener

contextConfigLocation

classpath:spring.xml

springmvc

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

classpath:springmvc.xml

springmvc

/*

配置Dispatcherservlet和springmvx.xml配置文件的位置

2、配置springmvc.xml文件

springmvc.xml主要配置控制器、handlerMapper、HandlerAdapter、渲染器

3、编写控制器控制器和配置的类型要一致

public class UserController implements Controller{

private UserService userService;

public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {

ModelAndView modelAndView = new ModelAndView();

List userList = userService.getUserByUser(null);

modelAndView.addObject(“user”, userList.get(0));

modelAndView.setViewName(“mypage”);

return modelAndView;

}

}

五、整合过程中出现的问题

1、IOC容器。

如果我使用XML配置IOC容器,自己定义一个类这个类里面的属性想用IOC容器里面的对象初始化,必须提供set/get方法。

2、P不能使用el表达式,这个问题要解决

这个问题是缺少jar包的问题要想jsp使用起来不出现问题需要添加下面的包,最上面的包之前添加过了

provided,因为provided表明该包只在编译和测试的时候用–>

javax.servlet

servlet-api

2.5

provided

javax.servlet.jsp

jsp-api

2.2

provided

javax.servlet

jstl

1.2

taglibs

standard

1.1.2

3、mybatis和spring的配置过程还要具体分析

A:这个里面有很多种配置这一次就详细说明一下我们这里使用的sqlSessionFactory和 MapperScannerConfigurer

sqlSessionFactory:创建的时候需要dataSource和mapper.xml的配置文件

MapperScannerConfigurer:可以整体扫描,提供基础的包名可以使用通配符,需要sqlSessionFactoryBeanName用来创建sqlSessionFactory对象再创建SqlSession对象再通过SqlSession对象创建各个mapper对象。

spring mvc配置数据库连接的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于spring mvc配置数据库连接,简明易懂:Spring MVC数据库连接配置,spring mvc mybatis 整合 大体步骤的信息别忘了在本站进行查找喔。

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/290742.html<

(0)
运维的头像运维
上一篇2025-05-19 08:57
下一篇 2025-05-19 08:59

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注