spring框架学习(二) ssm框架的配置

引入jar包

pom.xml

搜索maven Repository官网进行复制

关于spring:spring-mvc(spring web mvc),jdbc(spring jdbc)spring面向切面编程(spring aspects)

关于mybatis:mybatis,mybatis整合spring(mybatis spring)

  关于数据库库:数据库连接池(c3p0 ),mysql驱动(mysql connect)

  其他(jstl,servlet-api,junit): jstl、servlet-api、junit

 

引入bootstrap前端框架

搜索Bootstrap中文档 下载 解压--->css、js

 

 

 

编写ssm整合的关键配置文件

web.xml  、spring-mvc、spring-mybatis

 

 

web.xml

启动Spring的容器:ContextLoaderListener

其中:<param-value> classpath:applicationContext.xml(spring的配置文件,主要配置和业务逻辑有关的 )<...>

 

springMVC的前端控制器,用来拦截所有请求:springDispatcherServlet

其中

一、<param-value>classpath:spring-mvc.xml<...>

或是不需要<init-param>,但是需要①将<servlet-name>的值改为dispatcherServlet,②在web.xml同级文件夹里建一个spring的配置文件,文件名为:dispatcherServlet-servlet.xml

二、<url-pattern>/<url-pattern>(表示拦截所有请求)

 

 

字符编码过滤器:(filter为过滤器)(要放于所有其他过滤器之前的)

<filter>

<filter-name>CharacterEncodingFilter  <...>

<filter-class>   <...>

</filter>

<filter-mapping>(拦截所有请求)

    (CharacterEncodingFilter)

<...>

 

isforceRequestEncoding()==true就为此编码转换为指定字符集编码

 

使用Rest风格的URI(需要过滤器):

将页面普通的post请求转为指定的delete或者普通请求

HiddenHttpMethodFilter

如果从页面提交请求发不出 delete、 put之类的请求,所以需要一个过滤器,可以拦截这个请求,转为指定的请求(post、get之类的)

<filter>

     <filter-name>HiddenHttpMethodFilter<...>

<filter-class>

<filter>

<filter-mapping>

     <filter-name>...

      <url-pattern>*/<>(拦截所有请求)

<filter-mapping>   

 

 

spring-mvc的配置

主要包含网站跳转逻辑的控制

 

一、扫描所有的逻辑物业组件(package):

<context:compom-scan base-pakage=”com.(放组件的文件夹)” use-default-filters=”false”>

   (只扫描控制器 controller)

    <context:include-filter type=”” expression=”org.springframework...controller”>

<context:compon-scan>

 

二、配置试图解析器

(方便页面返回)

<bean class=” ...web.servlet.view.InternalResourceViewResolver ”>

 

 

value=”/WEB-INF/views(放置前端页面的路径)”

二、两个标准配置

 

 

 

1. 将springmvc不能处理的请求交给tomcat:

<mvc:default-servlet-handler/>

 

2. 支持springmvc更高级的一些功能,JSR303校验,快捷的ajax...:映射动态请求

<mvc:annotation-driven/>

 

 

Spring的配置文件

(一般命名:applicationContext.xml)

主要配置和业务逻辑有关的,数据源,事务控制

 

 

一、数据源

  <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">

        <property name="driverClassName" value="${jdbc_driver}"/>

        <property name="url" value="${jdbc_url}"/>

        <property name="username" value="${jdbc_username}"/>

        <property name="password" value="${jdbc_password}"/>

    </bean>

 

 

可以建一个dbconfig.propertyties(放置与数据有关的配置)

Jdbc.jdbcUrl=jdbc:mysql://ip地址/数据库名

Jdbc.driverClass=com.mysql.jdbc.Driver

Jdbc.user=

Jdbc.password=

引用外部文件:在spring配置文件里加入(放置在前面):(value值都要改)

<context:property-placeholder location=”classpath:dbconfig.propertyties”/>(放于头部)

 

 

二、组件也得被扫描

如spring-mvc 的配置

 

 

三、配置和Mybatis的整合

  <bean id="" class=""(指定mybatis全局配置文件的位置)

  <property name=”configlocation” value=”classpath:mybatis-config.xml” > </>

(数据源)

<property name=”datasource” ref=”pooledDataSource”> </>

(指定mybatis、mapper文件位置)

<pr.. name=”mapperLocation” value=”classpath:mapper/*xml(表示mapper目录里所有的xml文件)”</>

</bean>

 创建一个mybatis-config.xml

 

四、配置扫描器,将mybatis接口的实现加入到ioc容器中

 

class=“org.mybatis.spring.mapper.MapperScannerConfigurer”

 

扫描所有dao接口的实现,加入到ioc容器中)

      <property name=”baesPackage” value=”(扫描所有mapper接口)”

</.>

 

五、事务控制的配置

<bean  id=” (与下面保持一致(颜色标记))(表示用此事务管理器管理事务细节 比如怎么切入怎么处理)”  

 class="org.springframework.jdbc.datasource.DataSourceTransactionManager"

(控制数据源)

<property name=”dataSource”  ref=””><>

</>

六、开启于注解的事务、使用xml配置形式的事务(必要主要的都是配置式)

  <aop:config>

     (切入点表达式)

        <aop:pointcut exprssion="项目的service层..*..(表示service切入点,并且“..*”表示service包里不光是文件,子包也行)

)"   id="txPoint"/>  

(配置事务增强)

   <aop:advisor  advice-ref=”txAdvice”   pointcut-ref=”txPoint(切入点表达式)”/>   

七、配置事务增强,事务如何切入

<tx:advice id=”txAdvice” transaction-manage=”  为前面的事务管理器id” >

<tx:advice>

 

Spring配置文件的核心点:数据源(一、二)、于mybatis的整合(三、四)、事务控制(五、六、七) 

 

Mybatis-config的配置

使用mybatis的你像工程生成对应的bean以及mapper:

 

需要:(在pom.xml 里添加mybatis generator的jar包)

根据mybatis generator的官网配置

 

1.全局配置名的编写

2.数据库连接 

 配置数据库连接

 指定javaBean生成的位置

 指定sql映射文件生成的位置(mapper)

 table指定每个表的生成策略(表名(tableName)、实体类名(domainObectName))

3.生成:创建一个test类,和一个main方法运行

(main方法具体内容:根据mybatis generator的官网)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值