溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

SSM整合(二):配置文件編寫(xiě)

發(fā)布時(shí)間:2020-06-17 15:17:00 來(lái)源:網(wǎng)絡(luò) 閱讀:634 作者:wzlhlhhh 欄目:開(kāi)發(fā)技術(shù)

把項(xiàng)目建好了,下一步干嘛?

step2:

面對(duì)空蕩蕩的項(xiàng)目,首先當(dāng)然是想著導(dǎo)入這三個(gè)框架啦,就要進(jìn)行基礎(chǔ)配置了。

先放上我的配置文件結(jié)構(gòu)圖:

因?yàn)槭菍W(xué)習(xí)的緣故,我把每個(gè)項(xiàng)目都分開(kāi)來(lái)了,當(dāng)然,這是最后完整的。

在一開(kāi)始,需要有的是

spring-main.xml : spring的配置文件,用來(lái)導(dǎo)入各個(gè)配置文件

spring-beans.xml : spring-beans的配置文件,這里是用來(lái)注冊(cè)mybatis的SqlSession的。

spring-mvc.xml : springMVC的配置文件

mybatis.xml : mybatis的配置文件

jdbc.properties : 數(shù)據(jù)庫(kù)資源文件,四要素

spring-db.xml : 數(shù)據(jù)庫(kù)連接文件,定義datasource

這里的話,我會(huì)把每個(gè)文件都貼一下,方便不同的小伙伴找BUG

Spring的配置部分

spring-main.xml

[html] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 注冊(cè)beans -->  
<import resource="beans/spring-beans.xml"/>  
<!-- 注冊(cè)數(shù)據(jù)庫(kù),導(dǎo)入數(shù)據(jù)源 -->  
<!-- mybatis中的數(shù)據(jù)源由spring管控 -->  
<import resource="database/spring-db.xml"/>  
<!-- 注冊(cè)springmvc -->  
<import resource="springmvc/spring-mvc.xml"/>  
<!-- spring的事務(wù) -->  
<import resource="tx/spring-tx.xml"/>  
<!-- AspectJ -->  
<!-- <import resource="aspectj/spring-aspectj.xml"/> -->  

</beans>
這里可以看到就是一堆import。最開(kāi)始只有前面三個(gè)。

spring-beans.xml

[html] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">

<!-- <bean id="MyService" class="com.ssmlogin.service.LoginServiceImp">
<property name="pdao" ref="personDao" />
</bean> -->

<context:component-scan base-package="com.ssmlogin.*" />  

<!-- Dao -->  
<!-- 這里的話,需要記住要配置mybatis的配置文件 -->  
<bean id="MySqlSession" class="org.mybatis.spring.SqlSessionFactoryBean">  
    <property name="dataSource" ref="MyDataSource" />  
    <property name="configLocation" value="classpath:mybatis/mybatis.xml" />  
</bean>  

<!-- 批量導(dǎo)入Mapper,自動(dòng)掃描 -->  
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">  
    <property name="basePackage" value="com.ssmlogin.dao" />  
    <property name="sqlSessionFactoryBeanName" value="MySqlSession" />  
</bean>  

</beans>
這里呢可以看到,第一次注冊(cè)了MyService,其實(shí)用到的話就是我一開(kāi)始注冊(cè)的那種方法,很長(zhǎng)一串的那種,如果用注解就不用了。

spring-mvc.xml

[html] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">

<!-- 注冊(cè)注釋驅(qū)動(dòng)器 -->  
<mvc:annotation-driven />  

<context:component-scan base-package="com.ssmlogin.controller" />  

<!-- 注冊(cè)攔截器 -->  
<mvc:interceptors >  
    <mvc:interceptor>  
        <mvc:mapping path="/**"/>  
        <mvc:exclude-mapping path="/login"/>  
        <mvc:exclude-mapping path="/register"/>  
        <bean class="com.ssmlogin.interceptor.LoginChk"  />  
    </mvc:interceptor>  
</mvc:interceptors>  

<!-- 注冊(cè)切面 -->  

<bean id="MyAspect" class="com.ssmlogin.aop.MyAspect" />

<aop:aspectj-autoproxy />

</beans>
這里的話,一開(kāi)始只有掃描包和注冊(cè)注釋驅(qū)動(dòng)器吧。。。

mybatis.xml

[html] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 配置別名,到時(shí)候這個(gè)包下面的都去找對(duì)應(yīng)的mapper -->
<typeAliases>
<package name="com.ssmlogin.bean"/>
</typeAliases>
<!-- 配置映射,就到這里找mapper -->
<mappers>
<package name="com.ssmlogin.dao"/>
</mappers>
</configuration>
mybatis的配置,在簡(jiǎn)化之后,就這兩個(gè)步驟,一個(gè)配置別名,一個(gè)配置映射。

jdbc.properties

[plain] view plain copy
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/login?useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=
spring-db.xml

[html] view plain copy
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 注冊(cè)datasource -->  
<!-- 沒(méi)有提示,我追了下源碼,找set方法,我知道有4個(gè),所以找得到,除此之外,還有一些其他屬性可以設(shè)置 -->  
<bean id="MyDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">  
    <property name="driverClassName" value="com.mysql.jdbc.Driver" />  
    <property name="url" value="${jdbc.url}" />  
    <property name="username" value="${jdbc.username}" />  
    <property name="password" value="${jdbc.password}" />  
</bean>  

<!-- 導(dǎo)入db文件 -->  
<context:property-placeholder location="classpath:database/jdbc.properties"/>  

</beans>
到這里,配置文件就寫(xiě)完了,不過(guò)我有的是復(fù)制粘貼的,可以看每個(gè)xml的約束,有些約束是不需要的,這個(gè)我也隨便了解了下。

當(dāng)然這里順便貼一下我的類結(jié)構(gòu)圖:

這里有個(gè)Person.java類是當(dāng)做實(shí)體的,即POJO?

Person.java

[java] view plain copy
package com.ssmlogin.bean;

/*

  • 2018年5月9日13:27:26
  • 實(shí)體類
  • 實(shí)現(xiàn)登陸功能
    */
    public class Person {
    private Integer id;
    private String username;
    private String password;

    public Person(String username, String password) {
    super();
    this.username = username;
    this.password = password;
    }

    public Person() {
    super();
    // TODO 自動(dòng)生成的構(gòu)造函數(shù)存根
    }

    public Integer getId() {
    return id;
    }

    public void setId(Integer id) {
    this.id = id;
    }

    public String getUesrname() {
    return username;
    }

    public void setUesrname(String username) {
    this.username = username;
    }

    public String getPassword() {
    return password;
    }

    public void setPassword(String password) {
    this.password = password;
    }

    @Override
    public String toString() {
    return "Person [id=" + id + ", username=" + username + ", password=" + password + "]";
    }

}
這里我不得不提一下,Alt+Shift+S,這個(gè)基礎(chǔ)組合鍵,讓我重新認(rèn)識(shí)eclipse,感謝某老師。。

ALT+SHIFT+S+C -- 不帶參構(gòu)造函數(shù)

ALT+SHIFT+S+O -- 帶參構(gòu)造函數(shù)

ALT+SHIFT+S+R -- getter、setter

ALT+SHIFT+S+S -- toString()

這里的話,第二步就差不多了。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI