7.spring相关配置

文章目录

      • 一.application
      • 二.MyBatis
        • 一. mybatis执行流程:
        • 二. 关系映射

一.application







  		
  		
  		
  		
  		
  		
  		
  		
  		

  		
  		
  		
  		
  		
		
		
		
		

		
		
		
			
			
			
				
				
			
			
			
				
					set中元素(基本数据)
					
				
			
			
			
				
					list中的元素
					
				
			

			
			
				
					
						map元素的value
					

					
						
					
				
			


			
			

				
					
					properties元素的value
				
			

			
				
				
			
		

		
		
			
			
			
		

		
		
		
		
			
				
				
				
				
				
				
			
		

		
		
		
			
		

		
		
			
				
				
				
				
				
				
			
		
		
		
			
			
		


二.MyBatis

一. mybatis执行流程:

  1. 配置总配置文件(mybatis-config.xml):
    1. 导入db.properties
    2. 配置事务管理
    3. 配置数据源
    4. 引入Mapper文件
  2. 配置映射文件(xxxMpper.xml)
    1. 制定映射规则
    2. crud操作
      涉及到动态sql: where sql trim if
  3. 启动框架与执行
    1. 加载总配置文件
    2. 创建SqlSessionFactory
    3. 创建SqlSession对象
    4. 执行curd操作
    5. 提交事务
    6. 关闭资源

二. 关系映射

  1. 一对一
例子:QQ号(QQNumber)与(QQZone)
   class QQNumber(){
	QQZone zone = ....
   }
   class QQZone(){}
  1. 多对一

    1. 例子:员工(多:Employee)与 部门(一:Department)
    class Employee{
         Department dept = ...
      }
      class Department{
        
      }
    
    1. 映射:
      额外SQL方式:
    
    	
    	 
      
    
      sql: select * from Employee
    

    内联方式:

    
    	
    	   
    	   
    	
      
    
      sql: select e.*, d.id d_id, d.name d_name from Employee e  join
            Department d on e.dept_id = d.id
    
  2. 一对多

    1. 例子:部门(一:Department)与员工(多:Employee)
    class Department{
         List es = .....
      }
      class Employee{
        
      }
    
    1. 映射:
      额外sql:
    
    	
      
      sql: select * from Department
    

    内联方式:

    
    	
    		    
    		    
    	
      
      sql: select d.*, e.id as e_id, e.name as e_name from t_department d 
           JOIN t_employee e on d.id = e.dept_id where d.id = #{id};
    
  3. 多对多

    1. 例子:学生(多:Student)与老师(多:Teacher)
    class Student {
    	private List ts = new ArrayList<>();
      }
      public class Teacher {
      }
    
    1. 映射:
      额外sql方式:
    
    	
      
       getTeacherByStuId : 通过 student_teacher表查
      
      sql: select * from Student
    

    内联方式:

    
    	
    		
    		
    	
     
      sql: select s.*, t.id t_id, t.name t_name from student s
           join student_teacher st on s.id = st.stu_id on teacher t
           on st.tea_id = t.id
    

你可能感兴趣的:(JavaWeb,第十二章,Spring)