【实习日记】第三天

    今天是实习的第三天,昨天我们使用了ssm完成一个简单的登录界面,今天需要实现对数据库中数据的显示以及增删改查操作。

     老师在一开始为我们仔细讲解了配置文件的相关细节,听了老师的讲解,本来我对配置文件完全不理解,现在也对其基本构成有所了解了,本项目中配置文件有如下六部分。

1.配置数据库相关参数properties的属性
2.配置数据源,依赖注入的方式,bean即为对象,以前需要自己通过new操作,现在通过配置文件配置即可,对象的属性可通过property value进行设置。该dataSource为步骤三中的dataSource赋值

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="driverClass" value="${jdbc.driver}"/>
    <property name="jdbcUrl" value="${jdbc.url}"/>
    <property name="user" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
    <property name="maxPoolSize" value="30"/>
    <property name="minPoolSize" value="2"/>
</bean>

3.配置SqlSessionFactory对象,创建对象的注入方式主要有两种,第一种在配置文件中写一个bean,第二种可以通过添加注解的方式。
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <!-- 注入数据库连接池 -->
    <property name="dataSource" ref="dataSource"/>
    <!-- 扫描bean包 使用别名 -->
    <property name="typeAliasesPackage" value="com.zr.bean"></property>
    <!--配置加载映射文件 UserMapper.xml-->
    <property name="mapperLocations" value="classpath:mapper/*.xml"/>

</bean>

4.配置扫描Dao接口包,动态实现Dao接口,注入到spring容器中,创建MapperScannerConfigurer,并配置其两个属性
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <!-- 给出需要扫描Dao接口包 -->
    <property name="basePackage" value="com.zr.dao"/>
    <!-- 注入sqlSessionFactory -->
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
<!--自动扫描-->
<context:component-scan base-package="com.zr"/>


5.配置事务管理器
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource"/>
</bean>

6.开启事务注解

      查找功能的需要实现一个findAll方法,control层调用service,service调用dao层,把所有数据从数据库查出来之后,封装到ModelAndView里面在页面中展现出来即可,具体的sql语句在UserMapper中实现,不需要再向以前每次数据库操作都写一大堆创建驱动之类的,非常方便。

       删除操作可以通过给定的id进行删除,之后重定向到findAll.do重新查询,从而达到删除的目的。添加操作和删除类似,将用户添加后,重定向到findAll.do重新查询实现添加用户的目的。

       在更新操作中,首先实现toUpdate方法完成页面跳转,先通过selectUserById方法查找到目标用户,将其添加到ModelAndView中并在页面上展现,并跳转到user-update页面,实现类中使用select * from tb_user where id = #{id},通过这句SQL语句可以查找到目标用户。接下来需要实现一个update方法中,在其中调用userService的update方法更新用户,最后同样重定向findAll.do

    通过今天的学习实现了对数据库的增删改查,实现方法都大同小异,使用ssm确实比不使用框架减少了很多工作量,对于程序员来说只需要专注于逻辑实现即可,令我受益匪浅。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机专业毕业实习日记全文共2页,当前为第1页。计算机专业毕业实习日记全文共2页,当前为第1页。计算机专业毕业实习日记 计算机专业毕业实习日记全文共2页,当前为第1页。 计算机专业毕业实习日记全文共2页,当前为第1页。 今天就简单聊聊上面的Struts+Spring+Hibernate吧。 Struts 代表:表示层;Spring代表:业务逻辑层;Hibernate则代表持久层。他们是目前在Java Web编程开发中用得最多的框架,其实这样区分是为了适应软件开发过程中各个分工部门之间保持一致性的需要。说得简单点就是大家都在一个模式下写代码,这样就能保证写出来的程序能被每一个人都能够读懂,而且有些基本的东西它可以自动帮你生成,不用你自己一个一个的敲了,达到了代码复用。这样保证可读性的同时也提高了开发效率,从而降低了成本。Struts这个框架其实就是Java MVC设计模式中简称Model1与Model2Model2的一个具体实现,Spring 则通过提供ICO控制反转,也称依赖注入实现了对对象甚至事务如声明式事务的集中管理,此外还引入了AOP对向切面编程,当然也完全兼容其它框架。Hibernate吗,就是一个实现对象与关系映射的中间件,大家知道,现在的主流数据库还是关系型的,但编程却已经采用了面向对象的思想,如何让编程人员能像操作对象一样,操纵数据库里的数据呢?Hibernate就是这样一种框架。以前Java程序员与数据库打交道都是通过JDBC,还要写 SQL语句,不过Hibernate彻底改变了这一切,它在JDBC之上又作了一次封装,从而实现了不用写SQL语句就可以实现操作数据库。 值得提醒的是,这三个框架都是轻量级的,没有侵入性或者侵入性很低,不像EJB这样的重量级框架,它们都能最大限度的实现代码的可复用。 今天根据经理给的项目,自己尝试的进行修改! 转眼几天又过去了,工作的感觉也渐渐好了起来。值得高兴的是,前些天说的网站数据库加载失败的问题也解决了。多亏了论坛朋友的解答与同学的指导,总结一下主要有以下几个原因:没给SQL Server2000打补丁;数据库连接文件中写的密码与SA用户登陆数据库时的密码没保持一致;我用的是Tomcat的最新版本6,估计有兼容性问题,所以换了版本5;还有就是一开始没安装微软JDBC for SQL Server2000的驱动程序,导致无法加载驱动类库。几天的工夫总归没白费! 今天装了MySQL数据库,想给网站换个数据库管理系统。说实话,用惯了SQL Server2000感觉没什么意思了,就像总是用Windows操作系统一样,用久了就腻了!虽然SQL语句两者相差不大,但初次使用起来还是有点具有挑战性,至少有新鲜感,并促使你不断学习。 遇到的最头痛的要属数据库的备份与还原了。在SQL Server2000中,这非常简单,点击菜单即可。可在MySQL里,就不一样了,可能我刚学,还没上手吧。按照书上的操作把数据文件拷到Mysql安装目录的Data/数据库名 文件夹下,重启MySQL,用客户端连接上,能显示出来有表了,可执行Select语句里就出错了: ERROR 1034 HY000: Incorrect key file for table 'ebs_book'; try to repair it 计算机专业毕业实习日记全文共2页,当前为第2页。计算机专业毕业实习日记全文共2页,当前为第2页。 Google百度了一上午都没解决。只得到一些大概信息,如下: 计算机专业毕业实习日记全文共2页,当前为第2页。 计算机专业毕业实习日记全文共2页,当前为第2页。 frm、MYI、MYD分别对应MyISAM表的表结构\索引\数据文件; frm,myd,myi是属于MySQL存储数据的文件,phpMyAdmin是无法导入的。 phpMyAdmin支持的文件格式为sql文件。 frm格式 MYD格式MYI格式文件导入MySQL中的方法: 导入到sql的data目录 直接复制到新的数据库下就可以了,这样的文件是mysql用来存放表的文件,所以只能放到mysql的安装目录的data目录下,而且如果你是要传到空间上的话,基本上是无法恢复了,除非你把这些数据给空间商要他帮你恢复。 感觉像是判了"死缓"一样,难道数据真的无法恢复了? 感谢您的阅读,祝您生活愉快。 计算机专业毕业实习日记

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值