使用java方式装配Bean

Posted 追梦的小骚年丫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用java方式装配Bean相关的知识,希望对你有一定的参考价值。

    首先创建一个项目

    然后是项目名

下图:

  

创建完项目先配置pom.xml依赖关系

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.csw.ssm</groupId>
    <artifactId>SpringBean</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <spring.version>5.1.0.RELEASE</spring.version>
    </properties>

    <dependencies>
    <!-- Spring Web MVC -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator -->
    <dependency>
        <groupId>org.hibernate.validator</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>6.0.13.Final</version>
    </dependency>






    <!-- servlet 系列的支持 -->
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>8.0</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>

    <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>5.1.7</version>
    </dependency>

    <!-- Springframework -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>1.9.1</version>
    </dependency>

    <!-- MyBatis -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.4.6</version>
    </dependency>
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis-spring</artifactId>
        <version>1.3.2</version>
    </dependency>

    <!-- 数据库驱动以及数据库连接池-->
    <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>c3p0</artifactId>
        <version>0.9.5.2</version>
    </dependency>

    <!-- 日志框架 -->
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>4.0.0</version>
    </dependency>


    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>4.0.0</version>
    </dependency>

        <!-- 通用工具 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.9.7</version>
        </dependency>

        <!-- 单元测试 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>${spring.version}</version>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>

    </dependencies>

    <build>
        <finalName>contact</finalName>

        <plugins>
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.7</version>
                <dependencies>
                    <dependency>
                        <groupId>org.mariadb.jdbc</groupId>
                        <artifactId>mariadb-java-client</artifactId>
                        <version>2.3.0</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

</project>
View Code

 在resources下配MyBatis文件generatorConfig.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>
    <!--jdbc 驱动包,等-->
    <!--<classPathEntry location="/Program Files/IBM/SQLLIB/java/db2java.zip" />-->

    <context id="sss" targetRuntime="MyBatis3Simple">

        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        </commentGenerator>

        <jdbcConnection driverClass="org.mariadb.jdbc.Driver"
                        connectionURL="jdbc:mariadb://localhost/student"
                        userId="root"
                        password="13794709305">
        </jdbcConnection>


        <javaModelGenerator targetPackage="com.csw.entity" targetProject="src\\main\\java">
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="mapper"  targetProject="src\\main\\resources">
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="com.csw.dao" targetProject="src\\main\\java">
        </javaClientGenerator>

        <table tableName="%">
            <property name="useActualColumnNames" value="true"/>
        </table>

    </context>
</generatorConfiguration>
View Code

配置jdbc.properties.xml

jdbc.driver=org.mariadb.jdbc.Driver
jdbc.url=jdbc:mariadb://localhost:3306/student
jdbc.user=root
jdbc.password=13794709305
jdbc.txType=JDBC
View Code

配置日志文件logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>
                %msg%n
            </Pattern>
        </layout>
    </appender>

    <logger name="com.csw.dao" level="debug" additivity="false">
        <appender-ref ref="STDOUT" />
    </logger>

    <root level="error">
        <appender-ref ref="STDOUT" />
    </root>

</configuration>
View Code

配置mybatis-config.xml

<?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>


    <settings>
        <!-- 使用jdbc的getGeneratedKeys获取数据库自增主键值 -->
        <setting name="useGeneratedKeys" value="true" />
        <!-- 使用列别名替换列名 默认:true -->
        <setting name="useColumnLabel" value="true" />
        <!-- 开启驼峰命名转换:Table {create_time} -> Entity {createTime} -->
        <setting name="mapUnderscoreToCamelCase" value="true" />
    </settings>

    <!--&lt;!&ndash;定义一些可以复用的变量&ndash;&gt;-->
    <!--<properties resource="jdbc.properties" />-->

    <!--<settings>-->
        <!--<setting name="cacheEnabled" value="true" /> &lt;!&ndash; 开启二级缓存 &ndash;&gt;-->
        <!--<setting name="autoMappingBehavior" value="PARTIAL"/>-->
        <!--<setting name="mapUnderscoreToCamelCase" value="true"/>-->
        <!--<setting name="localCacheScope" value="SESSION" />-->
    <!--</settings>-->

    <!--&lt;!&ndash;设置别名,可以简化在 xml 中的完全限定名的使用&ndash;&gt;-->
    <!--<typeAliases>-->
        <!--<package name="com.csw.entity" /> &lt;!&ndash; 可以跟 @Alias 结合使用 &ndash;&gt;-->
    <!--</typeAliases>-->

    <!--<environments default="prod">-->
        <!--<environment id="prod">-->
            <!--<transactionManager type="JDBC" />-->
            <!--<dataSource type="POOLED">-->
                <!--<property name="driver" value="${driver}"/>-->
                <!--<property name="url" value="${url}"/>-->
                <!--<property name="username" value="${username}"/>-->
                <!--<property name="password" value="${password}"/>-->
            <!--</dataSource>-->
        <!--</environment>-->
    <!--</environments>-->

    <!--<databaseIdProvider type="DB_VENDOR">-->
        <!--<property name="mysql" value="mysql"/>-->
        <!--<property name="SQL Server" value="sqlserver"/>-->
        <!--<property name="DB2" value="db2"/>-->
        <!--<property name="Oracle" value="oracle" />-->
    <!--</databaseIdProvider>-->

    <!--&lt;!&ndash;指定映射器&ndash;&gt;-->
    <!--&lt;!&ndash;<mappers>&ndash;&gt;-->
        <!--&lt;!&ndash;<mapper resource="mapper/xxx.xml" />&ndash;&gt;-->
    <!--&lt;!&ndash;</mappers>&ndash;&gt;-->

</configuration>
View Code

配置spring-web.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"


       xsi:schemaLocation="http://www.springframework.org/schema/beans "
       xmlns:mvc="http://www.springframework.org/schema/c" xmlns:contxt="http://www.springframework.org/schema/p">


    <!--跨域的配置-->
    <mvc:cors>
        <mvc:mapping path="/xxx"
            allowed-origins="http://localhost:8080"
            allowed-methods="GET,POST"
            allowed-headers="Accept-Charset,Accept,Content-Type"
            allow-credentials="true"
        />
        <mvc:mapping path="/yyy/*"
            allowed-origins="*"
            allowed-methods="*"
            allowed-headers="*"/>
    </mvc:cors>


    <!--&lt;!&ndash;配置验证器&ndash;&gt;Spring装配bean--02通过Java代码装配bean

Spring系列 Bean装配

spring Bean装配的几种方式简单介绍

spring 自动装配 bean 有哪些方式?

Spring 实战-第二章-装配Bean

Spring实战读书笔记Spring装配Bean