Java @autowire注释不工作
我有一个控制器GGSNAcceptController.java:Java @autowire注释不工作,java,hibernate,spring-mvc,Java,Hibernate,Spring Mvc,我有一个控制器GGSNAcceptController.java: package com.viettel.pcrf.controller; import com.viettel.fw.Exception.LogicException; import com.viettel.fw.dto.BaseMessage; import com.viettel.fw.web.controller.BaseController; import com.viettel.pcrf.common.Const;
package com.viettel.pcrf.controller;
import com.viettel.fw.Exception.LogicException;
import com.viettel.fw.dto.BaseMessage;
import com.viettel.fw.web.controller.BaseController;
import com.viettel.pcrf.common.Const;
import com.viettel.pcrf.dto.GgsnAcceptDTO;
import com.viettel.pcrf.webconfig.service.GgsnAcceptService;
import java.io.Serializable;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
@Component
@ManagedBean(name = "ggsnAcceptController")
@Scope("view")
public class GGSNAcceptController extends BaseController implements Serializable, BaseTableCTRL {
/**
* VARIABLES & GETTER/SETTER
*/
private GgsnAcceptDTO ggsnAccept;
private GgsnAcceptDTO selectedGgsnAccept;
private List<GgsnAcceptDTO> listGgsnAccept;
public GgsnAcceptDTO getGgsnAccept() {
return ggsnAccept;
}
public void setGgsnAccept(GgsnAcceptDTO ggsnAccept) {
this.ggsnAccept = ggsnAccept;
}
public GgsnAcceptDTO getSelectedGgsnAccept() {
return selectedGgsnAccept;
}
public void setSelectedGgsnAccept(GgsnAcceptDTO selectedGgsnAccept) {
this.selectedGgsnAccept = selectedGgsnAccept;
}
public List<GgsnAcceptDTO> getListGgsnAccept() {
return listGgsnAccept;
}
public void setListGgsnAccept(List<GgsnAcceptDTO> listGgsnAccept) {
this.listGgsnAccept = listGgsnAccept;
}
/**
* SERVICE
*
*/
@Autowired
private GgsnAcceptService ggsnAcceptServ;
/**
* INIT
*
*/
@PostConstruct
@Override
public void init() {
updateCtrl();
}
@Override
public void updateCtrl() {
clear();
System.out.println(ggsnAcceptServ == null);
listGgsnAccept = ggsnAcceptServ.findAll();
}
private String ggsnAcceptSelected;
@Override
public void updateDB() {
try {
if (ggsnAccept == null) {
throw new LogicException("nullSelected", "GGSN Config is not yet selected!");
}
if (formStatus == Const.BTN_ADD && ggsnAcceptServ.isExisted(ggsnAccept)) {
throw new LogicException("insertExisted", "GGSN Config existed!");
}
// if (systemCfgSelected != null && systemCfgSelected.equals(systemCfg.getSystemCfgName()) && langServ.isExisted(systemCfg)) {
// throw new LogicException("updateExisted", "GGSN Config is existed!");
// }
BaseMessage msg = ggsnAcceptServ.updateGgsn(ggsnAccept);
if (msg.isSuccess()) {
reportSuccess("msgInfo", "Success");
}
updateCtrl();
selectedGgsnAccept = (GgsnAcceptDTO) msg.getOutputObject();
} catch (LogicException ex) {
reportError("msgInfo", ex.getDescription());
} catch (Exception ex) {
logger.error(ex, ex);
}
}
@Override
public void deleteDB() {
try {
if (ggsnAccept == null) {
throw new LogicException("nullSelected", "GGSN Config is not selected yet!");
}
BaseMessage msg = ggsnAcceptServ.deleteGgsn(ggsnAccept);
if (msg.isSuccess()) {
reportSuccess("msgInfo", "msg.delete.success");
}
updateCtrl();
} catch (LogicException ex) {
reportError("msgInfo", ex.getDescription());
} catch (Exception ex) {
logger.error(ex, ex);
}
}
@Override
public void prepareAdd() {
ggsnAccept = new GgsnAcceptDTO();
selectedGgsnAccept = null;
}
@Override
public void prepareEdit() {
if (selectedGgsnAccept != null) {
ggsnAccept = selectedGgsnAccept;
}
}
@Override
public void prepareDelete() {
if (selectedGgsnAccept != null) {
ggsnAccept = selectedGgsnAccept;
}
}
@Override
public void clear() {
selectedGgsnAccept = null;
ggsnAccept = null;
}
@Override
public void onRowChangeListener() {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
包com.viettel.pcrf.controller;
导入com.viettel.fw.Exception.LogicException;
导入com.viettel.fw.dto.BaseMessage;
导入com.viettel.fw.web.controller.BaseController;
导入com.viettel.pcrf.common.Const;
导入com.viettel.pcrf.dto.GgsnAcceptDTO;
导入com.viettel.pcrf.webconfig.service.GgsnAcceptService;
导入java.io.Serializable;
导入java.util.List;
导入javax.annotation.PostConstruct;
导入javax.faces.bean.ManagedBean;
导入org.springframework.beans.factory.annotation.Autowired;
导入org.springframework.beans.factory.annotation.Qualifier;
导入org.springframework.context.annotation.Scope;
导入org.springframework.stereotype.Component;
@组成部分
@ManagedBean(name=“ggsnAcceptController”)
@范围(“视图”)
公共类GGSNAcceptController扩展BaseController实现可序列化的BaseTableCTRL{
/**
*变量和GETTER/SETTER
*/
私人ggsnAccept至ggsnAccept;
私人GGS已接受选择的GGS接受;
私有列表列表被接受;
公共GgsnAcceptDTO getGgsnAccept(){
返回ggsnAccept;
}
公共无效设置ggsnAccept(GgsnAcceptDTO ggsnAccept){
this.ggsnAccept=ggsnAccept;
}
公共GGS已接受以获取selectedggsnaccept(){
返回Selectedggsnacept;
}
公共无效设置selectedGgsnAccept(GGS接受selectedGgsnAccept){
this.selectedGgsnAccept=selectedGgsnAccept;
}
公共列表getListGgsnAccept(){
返回listGgsnAccept;
}
公共无效设置listGgsnAccept(列表listGgsnAccept){
this.listggsnaaccept=listggsnaaccept;
}
/**
*服务
*
*/
@自动连线
专用GgsnAcceptService ggsnAcceptServ;
/**
*初始化
*
*/
@施工后
@凌驾
公共void init(){
updatetrl();
}
@凌驾
public void updatetrl(){
清除();
System.out.println(ggsnAcceptServ==null);
listGgsnAccept=ggsnaccceptserv.findAll();
}
私有字符串ggsnAcceptSelected;
@凌驾
public void updateDB(){
试一试{
if(ggsnAccept==null){
抛出新的LogicException(“nullSelected”,“尚未选择GGSN配置!”);
}
如果(formStatus==Const.BTN_ADD&&ggsnAcceptServ.isExisted(ggsnAccept)){
抛出新的LogicException(“insertExisted”,“GGSN配置已存在!”);
}
//if(systemCfgSelected!=null&&systemCfgSelected.equals(systemCfg.getSystemCfgName())&&langServ.isExisted(systemCfg)){
//抛出新的LogicException(“updateExisted”,“GGSN配置已存在!”);
// }
BaseMessage msg=ggsnAcceptServ.updategsn(ggsnAccept);
if(msg.issucess()){
reportSuccess(“msgInfo”、“Success”);
}
updatetrl();
选择edggsnaccept=(GgsnAcceptDTO)msg.getOutputObject();
}捕获(逻辑异常){
reportError(“msgInfo”,例如getDescription());
}捕获(例外情况除外){
记录器错误(ex,ex);
}
}
@凌驾
公共void deleteDB(){
试一试{
if(ggsnAccept==null){
抛出新的LogicException(“nullSelected”,“尚未选择GGSN配置!”);
}
BaseMessage msg=ggsnAcceptServ.deleteGgsn(ggsnAccept);
if(msg.issucess()){
reportSuccess(“msgInfo”、“msg.delete.success”);
}
updatetrl();
}捕获(逻辑异常){
reportError(“msgInfo”,例如getDescription());
}捕获(例外情况除外){
记录器错误(ex,ex);
}
}
@凌驾
公共空间(D){
ggsnAccept=新的GgsnAcceptDTO();
selectedggsnacept=null;
}
@凌驾
公共信息技术{
如果(Selectedggsnacept!=null){
ggsnAccept=已选择的EDGGSNACEPT;
}
}
@凌驾
公共作废准备删除(){
如果(Selectedggsnacept!=null){
ggsnAccept=已选择的EDGGSNACEPT;
}
}
@凌驾
公共空间清除(){
selectedggsnacept=null;
ggsnAccept=null;
}
@凌驾
public void onRowChangeListener(){
抛出新的UnsupportedOperationException(“尚未受支持”);//若要更改生成的方法体,请选择“工具”“模板”。
}
}
接口GgsnAcceptService.java:
package com.viettel.pcrf.webconfig.service;
import com.viettel.fw.dto.BaseMessage;
import com.viettel.pcrf.dto.GgsnAcceptDTO;
import java.util.List;
public interface GgsnAcceptService {
public List<GgsnAcceptDTO> findAll();
public List<GgsnAcceptDTO> findAll(List filters);
public BaseMessage updateGgsn(GgsnAcceptDTO ggsn) throws Exception;
public BaseMessage deleteGgsn(GgsnAcceptDTO ggsn) throws Exception;
public boolean isExisted(GgsnAcceptDTO ggsn) throws Exception;
}
package com.viettel.pcrf.webconfig.service;
导入com.viettel.fw.dto.BaseMessage;
导入com.viettel.pcrf.dto.GgsnAcceptDTO;
导入java.util.List;
公共接口GgsnAcceptService{
公共列表findAll();
公共列表findAll(列表过滤器);
public BaseMessage updateGgsn(GgsnAcceptDTO ggsn)抛出异常;
public BaseMessage deleteGgsn(GgsnAcceptDTO ggsn)抛出异常;
公共布尔isExisted(GgsnAcceptDTO ggsn)抛出异常;
}
以及实现上述接口的类:
package com.viettel.pcrf.webconfig.service;
import com.viettel.fw.common.util.extjs.FilterRequest;
import com.viettel.fw.dto.BaseMessage;
import com.viettel.pcrf.webconfig.repo.GgsnAcceptRepository;
import com.viettel.pcrf.common.util.mapper.GgsnAcceptMapper;
import com.viettel.pcrf.dto.GgsnAcceptDTO;
import java.util.List;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.viettel.service.BaseServiceImpl;
import java.util.ArrayList;
@Service
public class GgsnAcceptServiceImpl extends BaseServiceImpl implements GgsnAcceptService {
private GgsnAcceptMapper mapper = new GgsnAcceptMapper();
@Autowired
private GgsnAcceptRepository repository;
public Logger logger = Logger.getLogger(GgsnAcceptService.class);
@Override
public List<GgsnAcceptDTO> findAll(List filters) {
return mapper.toDtoBean(repository.findAll(repository.toPredicate(filters)));
}
@Override
public List<GgsnAcceptDTO> findAll() {
return mapper.toDtoBean(repository.findAll());
}
@Override
public BaseMessage updateGgsn(GgsnAcceptDTO ggsn) throws Exception {
BaseMessage msg = new BaseMessage();
GgsnAcceptDTO newGgsn = mapper.toDtoBean(repository.saveAndFlush(mapper.toPersistenceBean(ggsn)));
msg.setOutputObject(newGgsn);
msg.setSuccess(true);
return msg;
}
@Override
public boolean isExisted(GgsnAcceptDTO ggsn) throws Exception {
List<FilterRequest> listReq = new ArrayList<>();
listReq.add(new FilterRequest("IP", ggsn.getIp()));
return repository.findOne(repository.toPredicate(listReq)) != null;
}
@Override
public BaseMessage deleteGgsn(GgsnAcceptDTO ggsn) throws Exception {
BaseMessage msg = new BaseMessage();
repository.delete(mapper.toPersistenceBean(ggsn));
msg.setSuccess(true);
return msg;
}
}
package com.viettel.pcrf.webconfig.service;
导入com.viettel.fw.common.util.extjs.FilterRequest;
导入com.viettel.fw.dto.BaseMessage;
导入com.viettel.pcrf.webconfig.repo.GgsnAcceptRepository;
导入com.viettel.pcrf.common.util.mapper.GgsnAcceptMapper;
导入com.viettel.pcrf.dto.GgsnAcceptDTO;
导入java.util.List;
导入org.apache.log4j.Logger;
导入org.springframework.beans.factory.annotation.Autowired;
导入org.springframework.stereotype.Service;
导入com.viettel.service.BaseServiceImpl;
导入java.util.ArrayList;
@服务
公共类GgsnAcceptServiceImpl扩展BaseServiceImpl实现GgsnAcceptService{
私有GgsnAcceptMapper映射器=新的GgsnAcceptMapper();
@自动连线
私有GgsnAcceptRepository存储库;
public Logger=Logger.getLogger(GgsnAcceptService.class);
@凌驾
公共列表findAll(列表过滤器){
返回mapp
ggsnAcceptServ
@Component
@ManagedBean(name = "ggsnAcceptController")
@Scope("view")