简单学习ssm框架

什么是ssm框架?

ssm框架是一种web项目的开发框架,类似与个人简历模板。
程序员只需要做一件事情,这事情和自己的业务非常相关。和个人业务无直接关系的事情,交给ssm框架。
ssm框架是由SpringMvc+Spring+Mybatis组成(组合)

为什么使用框架?

Spring框架
Spring的2大技术
控制反转(ioc)和依赖注入(di)
面向切面编程(aop)

基础准备

学习框架基础准备内容
前端知识(html javascript \css)
java基础知识(对象、接口、继承、实现)
web开发(servlet jsp mvc思想),一定做过项目(非框架项目)
控制反转技术(inversion of control)
切入例子

在java基础中,创建对象,通过new对象,这个对象是在哪里创建呢?
那么,在框架中是如何创建对象的呢?

package com.baidu.javaPro.dao;

public interface UserDao {
    //写一个方法
    public void speak();
}
package com.baidu.javaPro.dao;

public class UserDaoImpl implements  UserDao {
    @Override
    public void speak() {
        System.out.println("UserDaoImpl-->speak method-->hello java 南京交通");
    }
}
package com.baidu.javaPro.test;

import com.baidu.javaPro.dao.UserDao;
import com.baidu.javaPro.dao.UserDaoImpl;

public class MyTest {


    public static void main(String[] args) {
        //需求:调用speak方法,创建speak方法的对象
        //创建对象:UserDao对象
        UserDao userDao= new UserDaoImpl();

        //调用方法:speak方法
        userDao.speak();

    }
}

控制反转定义

创建对象控制权的反转,原来创建对象:通过代码在测试类中,new对象。

现在呢,控制权反转,不在类中创建对象,在配置文件(比喻容器)中创建。
示例实现控制反转

1-创建web项目

2-导入spring对应的jar包和依赖包commons-logging

企业面试题:spring最核心最基本的模板或者容器
spring-beans
spring-context
spring-core
spring-expression
和依赖包commons-logging.jar
*记得导入jar包

3-创建spring的配置文件

Spring配置文件又叫容器,容器里面是装对象。此时的对象不是放在java类中,而是放在容器中。这就叫做控制反转
企业面试题:什么叫控制反转?

<?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
       https://www.springframework.org/schema/context/spring-context.xsd">
    <!--用于spring框架的配置设置-->
</beans>

选择第一步,然后点ok
4-在容器中创建bean
5-创建类和测试类
6-运行

使用junit进行测试

导入junit jar包
编写测试类
使用log4j 查看详细日志
创建 log4j.properties 文件 在resources里面
添加log4j内容

log4j.rootLogger=DEBUG,CONSOLE,file
#log4j.rootLogger=ERROR,ROLLING_FILE
log4j.logger.cn.smbms.dao=debug
log4j.logger.com.ibatis=debug 
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug 
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug 
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug 
log4j.logger.java.sql.Connection=debug 
log4j.logger.java.sql.Statement=debug 
log4j.logger.java.sql.PreparedStatement=debug 
log4j.logger.java.sql.ResultSet=debug 
log4j.logger.org.tuckey.web.filters.urlrewrite.UrlRewriteFilter=debug

######################################################################################
# Console Appender  \u65e5\u5fd7\u5728\u63a7\u5236\u8f93\u51fa\u914d\u7f6e
######################################################################################
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.Threshold=error
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern= [%p] %d %c - %m%n


######################################################################################
# DailyRolling File  \u6bcf\u5929\u4ea7\u751f\u4e00\u4e2a\u65e5\u5fd7\u6587\u4ef6\uff0c\u6587\u4ef6\u540d\u683c\u5f0f:log2009-09-11
######################################################################################
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern=yyyy-MM-dd
log4j.appender.file.File=log.log
log4j.appender.file.Append=true
log4j.appender.file.Threshold=error
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-M-d HH:mm:ss}%x[%5p](%F:%L) %m%n
log4j.logger.com.opensymphony.xwork2=error  

重新启动项目
进行测试看控制台的输出内容
自定义日志
创建logger对象
注意导入包的路径,是如下

import org.apache.log4j.Logger;

调用debug方法或者info方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值