分类 Java框架 下的文章

SSM框架搭建流程

原版

SSM框架的Web程序主要用到了三个技术:

  • Spring:用到了注解和自动装配,就是Spring的两个精髓IOC(反向控制)和 AOP(面向切面编程)。

  • SpringMVC:用到了MVC模型,将逻辑代码放到Controller层处理。

  • Mybatis:用到了与数据库打交道的层面,放在所有的逻辑之后,处理与数据库的CRUD相关的操作。

要完成一个功能:

  • 先写实体类entity,定义对象的属性,(可以参照数据库中表的字段来设置,数据库的设计应该在所有编码开始之前)。

  • 写Mapper.xml(Mybatis),其中定义你的功能,对应要对数据库进行的那些操作,比如 insert、selectAll、selectByKey、delete、update等。

  • 写Mapper.java,将Mapper.xml中的操作按照id映射成Java函数。

  • 写Service.java,为控制层提供服务,接受控制层的参数,完成相应的功能,并返回给控制层。

  • 写Controller.java,连接页面请求和服务层,获取页面请求的参数,通过自动装配,映射不同的URL到相应的处理函数,并获取参数,对参数进行处理,之后传给服务层。

  • 写JSP页面调用,请求哪些参数,需要获取什么数据。

- 阅读剩余部分 -

为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?

RubyLouvre

今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑问无法得到正确的解释,为什么我们现在做java的web开发,会选择struts2或者springMVC这样的框架,而不是使用servlet加jsp这样的技术呢?特别是现在我们web的前端页面都是使用velocity这样的模板语言进行开发,抛弃了jsp,这样的选择又会给我们java的web开发带来什么样的好处,延着这个问题的思路,我又发现新的疑问,为什么现在很多java企业级开发都会去选择spring框架,spring框架给我们开发的应用带来了什么?这么一想还真是问倒我了,我似乎很难找到一串能让人完全信服的答案,最终我发现,这些我认为我很熟悉很常用的技术,其实还有很多让我陌生不解的地方,这些陌生和不解的地方也正是我是否能更高层次使用它们的关键,今天这篇文章我就来讲讲这些问题,不过struts2,spring这样的技术经过这么多年的积累已经是相当庞大和复杂,它们的面很广,本人虽然已经用了它们多年,还是有很多技术不熟悉和不清楚,所以本文不是全面对我题目做出解答的文章,而是根据我现有知识结构来理解这个问题。

- 阅读剩余部分 -

SPRING 教程 01

简介

  • Spring是一个基于IOC和AOP的结构J2EE系统的框架

  • IOC 反转控制 是Spring的基础,Inversion Of Control

  • 简单说就是创建对象由以前的程序员自己new 构造方法来调用,变成了交由Spring创建对象

  • DI 依赖注入 Dependency Inject. 简单地说就是拿到的对象的属性,已经被注入好相关值了,直接使用即可

目录

  • 步骤 1 : 原理图

  • 步骤 2 : 创建项目spring

  • 步骤 3 : pojo

  • 步骤 4 : applicationContext.xml

  • 步骤 5 : TestSpring

文件下载

正文

步骤 1 : 原理图

  • 以获取对象的方式来进行比较

    • 传统的方式:
      通过new 关键字主动创建一个对象

    • IOC方式
      对象的生命周期由Spring来管理,直接从Spring那里去获取一个对象。 IOC是反转控制 (Inversion Of Control)的缩写,就像控制权从本来在自己手里,交给了Spring。

    获取对象的不同方式



- 阅读剩余部分 -

spring整合postgre数据源配置

ApplicationContext.xml配置中关于数据源的部分。

使用spring,就不用再操心configuration和sissionFactory等等与业务代码不相关的部分。

<context:component-scan base-package="com.hik" />
    <!--自动扫描的内容-->
     <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"  
        destroy-method="close">  
        <property name="driverClass">  
            <value>org.postgresql.Driver</value>  
        </property>  
        <property name="jdbcUrl">  
            <value>jdbc:postgresql://localhost:5433/test</value>  
        </property>  
        <property name="user">  
            <value>postgres</value>  
        </property>  
        <property name="password">  
            <value>123456</value>  
        </property>  
        <property name="maxPoolSize">  
            <value>80</value>  
        </property>  
        <property name="minPoolSize">  
            <value>1</value>  
        </property>  
        <property name="initialPoolSize">  
            <value>1</value>  
        </property>  
        <property name="maxIdleTime">  
            <value>20</value>  
        </property>  
    </bean>  
    <bean id="sessionFactory"  
        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">  
        <property name="dataSource">  
            <ref local="dataSource" />  
        </property>  
        <property name="mappingResources">  
            <list>  
                <value>com/hik/Entity/Users.hbm.xml</value>  
            </list>  
        </property>  
        <property name="hibernateProperties">  
            <props>  
                <prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</prop>  
                <prop key="show_sql">true</prop>  
                <prop key="hibernate.jdbc.batch_size">20</prop>  
            </props>  
        </property>  
    </bean>  
    <bean id="transactionManager"  
        class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
        <property name="sessionFactory" ref="sessionFactory" />  
    </bean>  
    <bean id="baseDao" class="com.hik.DaoImpl.UserDaoImpl">  
        <property name="sessionFactory">  
            <ref bean="sessionFactory" />  
        </property>  
    </bean> 

来源:http://blog.5ibc.net/p/87296.html