发表于: 2020-01-08 23:00:15

1 1047


今天完成的事情:


重新学习了动态sql语句


if     if 标签通常用于 WHERE 语句、UPDATE 语句、INSERT 语句中,通过判断参数值来决定是否使用某个查询条件、判断是否更新某一个字段、判断是否插入某个字段的值。
 判断某个条件是否成立 ,如果成立   则返回

举例:如果uesrname不为空   返回此条件


where     如果它包含的标签有返回值   则插入一个where
               如果标签的返回值为and  或 or 开头, 则剔除  
                常用方法  if+where     来剔除多个if 标签中易出现的 where  and 语法错误
choose    这个很好理解    类似Java的switch语句    从头开始   哪个符合条件用哪个   否则就判断下一个     
set              若它包含的标签若有返回值    就插入一个set  
                    主要用于更新操作    因为更新语句里需要用set赋新值 
trim       trim标记是一个格式化的标记,可以完成set或者是where标记的功能
              里面包含prefix:前缀   prefixoverride:去掉第一个and或者是or      可以替代if+where语句
            里面包含suffix:后缀         suffixoverride:去掉最后一个逗号               可以替代if+set语句

foreach     foreach 标签主要用于构建 in 条件,可在 sql 中对集合进行迭代。也常用到批量删除、添加等操作中。


创建了接口对应的SQL语句

<!-- 主页面-->
<select id="findAll"  resultType="pojo.onework" >
   select * from onework limit #{pageNow},#{pageSize}
</select>

搭建好了其他环境

applicationContext.xml

 <!--扫描daomapper)包下的注解-->
       <context:component-scan base-package="mapper" />
       <context:component-scan base-package="service" />
       <!--扫描service包下的注解-->

       <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
           <property name="driverClassName">
               <value>com.mysql.jdbc.Driver</value>
           </property>
           <property name="url">
               <value>jdbc:mysql://localhost:3306/student?characterEncoding=utf8</value>
           </property>
           <property name="username">
               <value>root</value>
           </property>
           <property name="password">
               <value>451976</value>
           </property>
       </bean>
   
       <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
           <property name="dataSource" ref="dataSource"></property>
           <property name="mapperLocations" value="classpath*:oneworkMapper.xml"></property>
       </bean>
   
       <bean id="mapperFactoryBean"  class="org.mybatis.spring.mapper.MapperFactoryBean">
           <property name="mapperInterface" value="mapper.oneworkMapper"></property>
           <!--        配置sqlSessionFactory-->
           <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
       </bean>
</beans>


springmvc.xml

<context:component-scan base-package="controller" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
   <property name="prefix" value="/WEB-INF/pages/"/>
   <property name="suffix" value=".jsp"/>
</bean>
<mvc:annotation-driven />
<mvc:default-servlet-handler/>
</beans>

web.xml

<context-param>
       <param-name>contextConfigLocation</param-name>
       <param-value>classpath:applicationContext.xml</param-value>
   </context-param>

<!--  监听初始spring配置-->
   <listener>
       <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
   </listener>

   <servlet>
       <servlet-name>dispatcherServlet</servlet-name>
       <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--       全局初始化参数-->
       <init-param>
           <param-name>contextConfigLocation</param-name>
           <param-value>classpath:springmvc.xml</param-value>
       </init-param>

       <load-on-startup>1</load-on-startup>
   </servlet>

<!--拦截请求-->

   <servlet-mapping>
       <servlet-name>dispatcherServlet</servlet-name>
       <url-pattern>/</url-pattern>
   </servlet-mapping>


<!--    解决中文乱码的问题-->
<filter>
   <filter-name>characterEncodingFilter</filter-name>
   <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
</init-param>
<init-param>
       <param-name>forceEncoding</param-name>
       <param-value>true</param-value>
</init-param>
</filter>

<!--    映射关系配置   -->
<filter-mapping>
   <filter-name>characterEncodingFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>


   <!--    浏览器只支持Postget的方式,想要实现deleteput的方式,需要使用过滤器HiddenHttpMethodFilter-->
   <filter>
       <filter-name>hidden</filter-name>
       <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
   </filter>

   <filter-mapping>
       <filter-name>hidden</filter-name>
       <url-pattern>/*</url-pattern>
   </filter-mapping>

   </web-app>



明天计划的事情:


完成所有的查询




返回列表 返回列表
评论

    分享到