Class 的反射

来源:互联网 发布:java调用wsdl接口 cxf 编辑:程序博客网 时间:2024/05/21 22:48
import java.sql.DriverManager;
import java.util.Date;

public class Reflex {
    public static void main(String[] args) throws ClassNotFoundException {
    /*    Date date=new Date();
        Class<?> cls=date.getClass();
        System.out.println(cls.getName());     //基本不用
        
        
        Class<?> cls=Date.class;
        System.out.println(cls.getName());   //是否理解为hibernater 的bean id
        
        
        
        
        
        
        Class<?> cls=Class.forName("java.util.Date");//数据库驱动
        System.out.println(cls);
        
            */    
        /**
         *    Class.forName(DBDRIVER);
         *    Connection conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);
         *    是否可以理解Class.forName()将驱动打开,将钥匙放在一个特别的地方,因为DriverManager.getConnection()
         *    静态方法取得钥匙,获取数据哭的链接
         */
        
        // Connection conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);
        
        
        
    }

}

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

对于javaEE框架有大量反射

我说说我的理解

下面是不对的(但是思考过就好)

package com.test.factory;

import com.test.echo.User;

public class testGet {
    public static void main(String[] args) throws ClassNotFoundException {
        User u=new User();
        u.setContent("echo");
        u.setTitle("welcome to 422");
        
        String name="com.test.echo.User";
        GetConfig.getSession(u, name);
    }

}
-------------------------------------------------------

public class GetConfig {
        public static void getSession(Object obj,String name) throws ClassNotFoundException{
        Configuration cfg=new Configuration().configure();
        SessionFactory sf=cfg.buildSessionFactory();
        Session sess=sf.openSession();
        Transaction ts=sess.beginTransaction();
        
        Class<?> cls=Class.forName(name);
        
        cls=() obj;
        System.out.println(cls.getName());
        
        
        //sess.save(cls);
        //ts.commit();
        
        sess.close();
        }


-------------------------------------------------------------

因为hibernater 调用Configure,每次只是调用POJO类然后传入,我想设计一个反射类,直接传入POJO类,屏蔽掉外面

因为技术水平,暂未实现

0 0
原创粉丝点击