在一个main方法的class类里面将该类注解到spring容器中,如何准备jar包

classvisitor 发布于 2016/12/28 17:13
阅读 641
收藏 0
package cj.oct.on;

import javax.annotation.Resource;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.annotation.Scope;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.orm.toplink.ServerSessionFactory;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import cj.oct.action.UserAction;
import cj.oct.entity.Privillage;
import cj.oct.entity.User;
import freemarker.template.Configuration;

@Component()
public class Installer {
    
    @Resource
    private SessionFactory sessionFactory;
    @Transactional
    public void install(){
        //1.保存超级管理员
        User u=new User();
        u.setLoginName("admin");
        u.setName("超级管理员");
        Session session=sessionFactory.getCurrentSession();
        session.save(u);
        //2.保存权限
        Privillage menu1,menu2,menu,menu3,menu4,menu5;
        menu=new Privillage("系统管理",null,null);
        menu1=new Privillage("岗位管理","/role_list",menu);
        menu2=new Privillage("部门管理","/dept_list",menu);
        menu3=new Privillage("用户管理","/user_list",menu);
        
        //岗位管理下的增删改查权限
        session.save(new Privillage("岗位列表","/role_list",menu1));
        session.save(new Privillage("岗位添加","/role_add",menu1));
        session.save(new Privillage("岗位修改","/role_edit",menu1));
        session.save(new Privillage("岗位删除","/role_delete",menu1));
        
        //部门管理下的权限
        session.save(new Privillage("部门列表","/dept_list",menu2));
        session.save(new Privillage("部门添加","/dept_add",menu2));
        session.save(new Privillage("部门修改","/dept_edit",menu2));
        session.save(new Privillage("部门删除","/dept_delete",menu2));
        
        //用户管理权限下的权限
        session.save(new Privillage("用户列表","/user_list",menu3));
        session.save(new Privillage("用户添加","/user_add",menu3));
        session.save(new Privillage("用户修改","/user_edit",menu3));
        session.save(new Privillage("用户删除","/user_delete",menu3));
        //..................
        
        menu1=new Privillage("网上交流",null,null);
        menu2=new Privillage("论坛管理","/forumManage_list",menu);
        menu3=new Privillage("论坛","/forum_list",menu);
        session.save(menu1);
        session.save(menu2);
        session.save(menu3);
        //.................
        menu=new Privillage("审批流转",null,null);
        menu1=new Privillage("审批流程管理","/processDefinition_list",menu);
        menu2=new Privillage("申请模板管理","/template_list",menu);
        menu3=new Privillage("起草申请","/flow_templateList",menu);
        menu4=new Privillage("待我审批","/flow_myTaskList",menu);
        menu5=new Privillage("我的申请查询","/flow_myApplicationList",menu);
        session.save(menu);
        session.save(menu1);
        session.save(menu2);
        session.save(menu3);
        session.save(menu4);
        session.save(menu5);
    }
    public static void main(String[] args) {
        ApplicationContext ac=new ClassPathXmlApplicationContext(new String[]{"applicationContext.xml"});
    
        Installer it=(Installer) ac.getBean("ins");
        System.out.println(it);
        it.install();
    }
    

}

/**

就是这个独立的main方法的应用程序运行时出现错误提示了,找不到classvisitor.visit,“installer”不能被初始化。这个问题已经困扰我很久了,我是ssh框架,但是初始化数据时,没有启动tomcat

*/

加载中
0
红心A

Installer it=(Installer) ac.getBean("ins");

这样能获取到Installer类吗

0
c
classvisitor
这个不是主要原因,我写错了,是"installer",但是问题不在这里,而是找不到asm.classvisitor.visit方法
0
tinshen
tinshen

asm.classvisitor.visit方法

确定架包的版本是否正确。

c
classvisitor
这个classvisitor类是在asm.jar里面吗?我不知道该用哪个版本的asm.jar,因为既有hibernate的asm.jar,还有spring的asm-2.2.3.jar。因为是ssh整合项目,但是没放在tomcat里面运行
0
c
classvisitor
需要哪些jar包呢,spring2.5.6 和整合hibernate3.1整合,生成动态代理所需要的jar
0
c
classvisitor

我包都弄好了,还是说找不到webObject.asm.classVisitor这个类,我的spring的jar包有:asm-2.2.2.jar;asm-commons-2.2.2.jar;asm-utils-2.2.2.jar;asm-nodep-2.2_3.jar;aopaillence.jar.aspecjweaver.jar;这些包做动态代理还不够吗


0
c
classvisitor

我想用ssm框架实现了<dependency><groupId>cn.cj</groupId><artifactId>mySsm</artifactId>

<version>mySsm.version</version>

</dependency>

返回顶部
顶部