spring mvc 整合hibernate 菜鸟级问题

问题描述

小弟想用spring mvc 整合hibernate 但是spring总是如法注入。 spring配置文件如下<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans><bean id="jdbcPropertyConfiger"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"><property name="locations"><list><value>classpath:jdbc.properties</value></list></property></bean><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="driverClass"><value>${datasource.driverClassName}</value></property><property name="jdbcUrl"><value>${datasource.url}</value></property><property name="user"><value>${datasource.username}</value></property><property name="password"><value>${datasource.password}</value></property><property name="acquireIncrement"><value>${c3p0.acquireIncrement}</value></property><property name="initialPoolSize"><value>${c3p0.initialPoolSize}</value></property><property name="minPoolSize"><value>${c3p0.minPoolSize}</value></property><property name="maxPoolSize"><value>${c3p0.maxPoolSize}</value></property><property name="maxIdleTime"><value>${c3p0.maxIdleTime}</value></property><property name="idleConnectionTestPeriod"><value>${c3p0.idleConnectionTestPeriod}</value></property><property name="maxStatements"><value>${c3p0.maxStatements}</value></property><property name="numHelperThreads"><value>${c3p0.numHelperThreads}</value></property></bean><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource"><ref bean="dataSource" /></property></bean><bean id="transactionInterceptor"class="org.springframework.transaction.interceptor.TransactionInterceptor"><property name="transactionManager" ref="transactionManager"></property><property name="transactionAttributes"><props><prop key="query*">PROPAGATION_REQUIRED,readOnly</prop><prop key="save*">PROPAGATION_REQUIRED</prop><prop key="delete*">PROPAGATION_REQUIRED</prop><prop key="update*">PROPAGATION_REQUIRED</prop></props></property></bean><bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><property name="dataSource" ref="dataSource"></property><property name="mappingResources"><list><value>classpath:ac02.hbm.xml</value></list></property><property name="hibernateProperties"><props><prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop></props></property></bean> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <bean id="QscDBService" class ="com.qsc.m.QscDBServiceImpl"><property name="sessionFactory" ref="sessionFactory" /><property name="hibernateTemplate" ref="hibernateTemplate" /></bean><bean id="ControllerJoin" class="com.qsc.c.ControllerJoin"><property name="QscDBService" ref="QscDBService"></property> </bean></beans>QscDBservice类如下package com.qsc.m;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import org.springframework.jdbc.core.JdbcTemplate;import org.springframework.jdbc.datasource.DataSourceUtils;import org.springframework.orm.hibernate3.HibernateTemplate;import com.qsc.pojo.ac02;public class QscDBServiceImpl extends JdbcTemplate implements QscDBService {private HibernateTemplate hibernateTemplate;public HibernateTemplate getHibernateTemplate() {return hibernateTemplate;}public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {this.hibernateTemplate = hibernateTemplate;}public void sava(ac02 ac02) {hibernateTemplate.save(ac02);}ControllerJoin类如下package com.qsc.c;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.servlet.ModelAndView;import org.springframework.web.servlet.mvc.Controller;import com.qsc.m.QscDBService;import com.qsc.pojo.ac02;import com.qsc.spring.ContextLoaderListener;public class ControllerJoin implements Controller {private QscDBService qsc;public QscDBService getQsc() {return qsc;}public void setQsc(QscDBService qsc) {this.qsc = qsc;}public ModelAndView handleRequest(HttpServletRequest arg0,HttpServletResponse arg1) throws Exception {//final QscDBService qsc = (QscDBService)ContextLoaderListener.getBean("QscDBService");ac02 ac02 = new ac02();String aac001 = arg0.getParameter("account");String aac002 = arg0.getParameter("name");String aac003 = arg0.getParameter("age");String aac004 = arg0.getParameter("email");String aac005 = arg0.getParameter("phone");String aac006 = arg0.getParameter("pass");ac02.setAac001(aac001);ac02.setAac002(aac002);ac02.setAac003(Integer.parseInt(aac003));ac02.setAac004(aac004);ac02.setAac005(aac005);ac02.setAac006(aac006);qsc.sava(ac02);return new ModelAndView("success");}}debug后发现 qsc和hibernatetemplate 这两个全是null 说明spring没注入成功,这是为啥啊?谢谢

解决方案

注入的名字要和配置文件中一致 比如qsc,你在 <property name="qsc" ref="QscDBService"></property>

时间: 2024-08-01 07:42:49

spring mvc 整合hibernate 菜鸟级问题的相关文章

基于注解的Spring MVC整合Hibernate(所需jar包,spring和Hibernate整合配置,springMVC配置,重定向,批量删除)

1.导入jar 2.web.xml配置 <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4"  xmlns="http://java.sun.com/xml/ns/j2ee"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocatio

maven intellij-mybatis+spring mvc整合出的错误!

问题描述 mybatis+spring mvc整合出的错误! 10C 在myeclipse中的配置文件转到intellij用maven创建web项目就出现下面的异常.UserMapper.xml中的方法和UserMapper.java中的一样.改用原生JDBC连接没问题,就是不知道是什么错,请大神帮忙解答.在myeclipse中都没问题的,改maven就不行了,纳闷了. type Exception report message Request processing failed; nested

mvc注解-spring MVC注解 + hibernate +jpa配置 出错 具体如下

问题描述 spring MVC注解 + hibernate +jpa配置 出错 具体如下 这个是错误 No unique bean of type [javax.persistence.EntityManagerFactory] is defined: expected single bean but found 0 下面为XML配置文件 web.xml 导入hibernate <filter> <filter-name>openEntityManagerInViewFilter&

mapper类-spring mvc整合mybatis 为什么不把mapper接口类直接注入Controller呢

问题描述 spring mvc整合mybatis 为什么不把mapper接口类直接注入Controller呢 spring mvc整合mybatis 为什么不把mapper接口类直接注入Controller呢? 正常开发如下: 1.mapper.xml,mapper接口类,service接口,serviceImpl实现类,Controller控制类 2.serviceImpl实现类注入mapper接口类,在Controller控制类中注入service接口 问题1.为什么不直接把mapper接口

log4j2 与 spring mvc整合

log4j2不仅仅是log4j的简单升级,而是整个项目的重构,官网地址:http://logging.apache.org/log4j/2.x/,大家可以从官网的介绍看出它相比log4j第1代的种种优点. 一.基本使用 1.1 maven依赖项 1 <dependency> 2 <groupId>org.apache.logging.log4j</groupId> 3 <artifactId>log4j-api</artifactId> 4 &l

Shiro系列之Shiro+Spring MVC整合

第一步,Shiro Filter 在web.xml文件中增加以下代码,确保Web项目中需要权限管理的URL都可以被Shiro拦截过滤. <!-- Shiro Filter --> <filter> <filter-name>shiroFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>

jasperReports 与spring mvc整合 及 图片显示问题

前言 在本教程中,我们将学习如何在一个简单的Spring MVC Web应用中集成Jasper报表工具.教程涵盖的技术点有:报表自定义数据源的使用:报表渲染.呈现的配置与实现:iReport报表设计器的使用(报表模板设计)等. 代码下载 开发环境准备 以下两种方式任选其一: 1. 在已有的SpringMVC项目环境中进行配置(要求项目可正常运行.调试): 2. 在eclipse中安装Spring的STS工具,然后新建一个Spring MVC Project(要求已配置好Maven环境): 项目依

hibernate+spring mvc, 解决hibernate 对象懒加载 json序列化问题

引用地址 在使用Spring MVC时,@ResponseBody 注解的方法返回一个有懒加载对象的时候出现了异常,以登录为例:   Java代码   @RequestMapping("login")       @ResponseBody       public Object login(@RequestParam String username,@RequestParam String password){           List<User> list=user

spring mvc整合freemarker基于注解方式_实用技巧

基于网络改进为:最正常版本 复制代码 代码如下: <?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:p="htt