??xml version="1.0" encoding="utf-8" standalone="yes"?>日本视频一区二区,亚洲精品日韩精品,亚洲精品久久久久久久久久久久http://www.aygfsteel.com/suplayer/archive/2011/07/30/355406.htmlsuplayersuplayerSat, 30 Jul 2011 08:36:00 GMThttp://www.aygfsteel.com/suplayer/archive/2011/07/30/355406.htmlhttp://www.aygfsteel.com/suplayer/comments/355406.htmlhttp://www.aygfsteel.com/suplayer/archive/2011/07/30/355406.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/355406.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/355406.htmlhttp://www.iteye.com/topic/930648

RBACQRole-Based Access ControlQ基于角色的讉K控制Q,是用户通过角色与权限进行关联。简单地_一个用h有若q角Ԍ每一个角色拥有若q权限。这P构造成“用户-角色-权限”的授权模型。在q种模型中,用户与角色之_角色与权限之_一般者是多对多的关系。(如下图)



角色是什么?可以理解Z定数量的权限的集合,权限的蝲体。例如:一个论坛系l,“񔽎理?#8221;?#8220;版主”都是角色。版d理版内的帖子、可理版内的用LQ这些是权限。要l某个用h予这些权限,不需要直接将权限授予用户Q可?#8220;版主”q个角色赋予该用戗?nbsp;

 

当用L数量非常大时Q要l系l每个用户逐一授权Q授角色Q,是g非常烦琐的事情。这Ӟ需要给用户分组Q每个用L内有多个用户。除了可l用h权外Q还可以l用L授权。这样一来,用户拥有的所有权限,是用户个h拥有的权限与该用h在用L拥有的权限之和。(下图为用L、用户与角色三者的兌关系Q?/p>

在应用系l中Q权限表现成什么?对功能模块的操作Q对上传文g的删改,菜单的访问,甚至面上某个按钮、某个图片的可见性控Ӟ都可属于权限的范畴。有些权限设计,会把功能操作作ؓ一c,而把文g、菜单、页面元素等作ؓ另一c,q样构成“用户-角色-权限-资源”的授权模型。而在做数据表建模Ӟ可把功能操作和资源统一理Q也是都直接与权限表进行关联,q样可能更具便捷性和易扩展性。(见下图)



L意权限表中有一?#8220;权限cd”Q我们根据它的取值来区分是哪一cL限,?#8220;MENU”表示菜单的访问权限?#8220;OPERATION”表示功能模块的操作权限?#8220;FILE”表示文g的修Ҏ(gu)限?#8220;ELEMENT”表示面元素的可见性控制等?/p>

 

q样设计的好处有二。其一Q不需要区分哪些是权限操作Q哪些是资源Q(实际上,有时候也不好区分Q如菜单Q把它理解ؓ资源呢还是功能模块权限呢Q)。其二,方便扩展Q当pȝ要对新的东西q行权限控制Ӟ我只需要徏立一个新的关联表“权限XX兌?#8221;Qƈ定q类权限的权限类型字W串?/p>

 

q里要注意的是,权限表与权限菜单兌表、权限菜单关联表与菜单表都是一对一的关pR(文g、页面权限点、功能操作等同理Q。也是每添加一个菜单,得同时往q三个表中各插入一条记录。这P可以不需要权限菜单关联表Q让权限表与菜单表直接关联,此时Q须在权限表中新增一列用来保存菜单的IDQ权限表通过“权限cd”和这个ID来区分是U类型下的哪条记录?/p>

 

到这里,RBAC权限模型的扩展模型的完整设计囑֦下:



随着pȝ的日益庞大,Z方便理Q可引入角色l对角色q行分类理Q跟用户l不同,角色l不参与授权。例如:某电(sh)|系l的权限理模块中,角色是挂在区局下,而区局在这里可当作角色l,它不参于权限分配。另外,为方便上面各主表自n的管理与查找Q可采用树型l构Q如菜单树、功能树{,当然q些可不需要参于权限分配?/p>

suplayer 2011-07-30 16:36 发表评论
]]>
iBATIS操作Blob与Clob析http://www.aygfsteel.com/suplayer/archive/2011/07/30/355405.htmlsuplayersuplayerSat, 30 Jul 2011 08:35:00 GMThttp://www.aygfsteel.com/suplayer/archive/2011/07/30/355405.htmlhttp://www.aygfsteel.com/suplayer/comments/355405.htmlhttp://www.aygfsteel.com/suplayer/archive/2011/07/30/355405.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/355405.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/355405.htmlhttp://developer.51cto.com/art/200907/136668.htm


spring 中已l提供了很好的实玎ͼ所以这又省M很多的功夫,接下来看?font style="background-color: #ffffff">iBATIS是如何支?font style="background-color: #ffffff">Clob和blob的?

iBATIS提供了TypeHandler接口Q用于处理数据类型,基本的实现类为BaseTypeHandler

在spring 中,提供了AbstractLobTypeHandler作ؓ基础c,q且提供了相应的模版Ҏ(gu)Q所有的工作由LobHandler处理?/p>

BlobByteArrayTypeHandler 主要用于处理blobcd数据Q用byte[]来映相应的Blob

ClobStringTypeHandler 用于处理Clobcd数据Q用字W串来映Clob

有一炚w要注意的是,AbstractLobTypeHandler中实C事务支持Q需要用来释攄应的资源Q所以一定需要在事务环境中进行?/p>

下面是一个简单的例子Q?/p>

  1. public class Food {   
  2. private String content;   
  3.  
  4. private String id;   
  5.  
  6. private byte[] image;   
  7.  
  8. private String name;     
  9.     ...   
  10. }  

xml如下Q说明一下,在resultMap中可以通过typeHandler来指定具体的handler.在inline变量中,可以通过handler来定义相应的typeHandler

  1. HsqlMap namespace="Food"H?nbsp;  
  2.      
  3.    HtypeAlias alias="Food" type="org.esoft.hdb.bo.Food"/H?nbsp;  
  4.    HresultMap id="foodResult" class="Food"H?nbsp;  
  5.   Hresult property="id" column="C_ID"/H?nbsp;  
  6.   Hresult property="name" column="C_NAME"/H?nbsp;  
  7.   Hresult property="content" column="C_content"   
  8.  typeHandler="org.springframework.orm.ibatis.support.ClobStringTypeHandler"/H?nbsp;  
  9.   Hresult property="image" column="C_image"   
  10.  typeHandler="org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler"/H?nbsp;  
  11.    H?resultMapH?nbsp;  
  12.    Hsql id="foodFragment"Hselect C_ID,C_NAME,C_CONTENT,C_IMAGE from T_FOODH?sqlH?nbsp;  
  13.   Hselect id="getAll" resultMap="foodResult"H?nbsp;  
  14.   Hinclude refid="foodFragment"/H?nbsp;  
  15.    H?selectH?nbsp;  
  16.    Hselect id="selectById" parameterClass="string" resultMap="foodResult"H?nbsp;  
  17.   Hinclude refid="foodFragment"/H?nbsp;where C_ID=#id#H?selectH?nbsp;  
  18.      
  19.    Hinsert id="insert" parameterClass="Food"H?nbsp;insert into T_FOOD ( C_ID,   
  20.   C_NAME,C_CONTENT, C_IMAGE) values ( #id#,   
  21.   #name#,#content,handler=org.springframework.orm.ibatis.support.ClobStringTypeHandler#,   
  22.   #image,handler=org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler#)   
  23.   H?insertH?nbsp;  
  24.      
  25.    Hupdate id="update" parameterClass="Food"H?nbsp;update T_FOOD set C_NAME = #name#,   
  26.   C_CONTENT =   
  27.   #content,handler=org.springframework.orm.ibatis.support.ClobStringTypeHandler#,   
  28.   C_IMAGE =   
  29.   #image,handler=org.springframework.orm.ibatis.support.BlobByteArrayTypeHandler#   
  30.   where C_ID = #id# H?updateH?nbsp;  
  31.      
  32.    Hdelete id="deleteById" parameterClass="string"H?nbsp;delete from T_FOOD where C_ID = #id#   
  33.   H?deleteH?nbsp;  
  34.      
  35. H?sqlMapH?nbsp;  
  36.  
  37.  
  38. public interface FoodService {   
  39.  
  40.      
  41. void save(Food food);   
  42. Food get(String id);   
  43. /**   
  44. * @param food   
  45. */   
  46. void update(Food food);   
  47. }   
  48.  
  49. public class FoodServiceImpl implements FoodService {   
  50. private FoodDAO foodDAO;   
  51.  
  52. private DaoCreator creator;   
  53.  
  54. public void setCreator(DaoCreator creator) {   
  55.     this.creator = creator;   
  56. }   
  57.  
  58. protected FoodDAO getFoodDAO() {   
  59.     if (foodDAO == null) {   
  60.    foodDAO = (FoodDAO) creator.createDao(FoodDAO.class, Food.class);   
  61.     }   
  62.     return foodDAO;   
  63. }   
  64.  
  65. public Food get(String id) {   
  66.     return getFoodDAO().get(id);   
  67. }   
  68. public void save(Food food) {   
  69.     getFoodDAO().save(food);   
  70. }   
  71. public void update(Food food) {   
  72.     getFoodDAO().update(food);   
  73. }   
  74.  
  75. }   
  76.  
  77. spring xml 配置Q? 
  78.    
  79. 。。?nbsp;  
  80.  Hbean id="lobHandler"   
  81.   class="org.springframework.jdbc.support.lob.DefaultLobHandler"/H?nbsp;  
  82.      
  83.    Hbean id="transactionManager"   
  84.   class="org.springframework.jdbc.datasource.DataSourceTransactionManager"H?nbsp;  
  85.   Hproperty name="dataSource" ref="dataSource"/H?nbsp;  
  86.    H?beanH?nbsp;  
  87.      
  88.    Hbean id="sqlMapClient"   
  89.   class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"H?nbsp;  
  90.   Hproperty name="dataSource" ref="dataSource"/H?nbsp;  
  91.   Hproperty name="configLocation"H?nbsp;  
  92.  HvalueHSqlMapConfig.xmlH?valueH?nbsp;  
  93.   H?propertyH?nbsp;  
  94.   Hproperty name="lobHandler" ref="lobHandler"/H?nbsp;  
  95.    H?beanH?nbsp;  
  96.      
  97.    Hbean id="daoCreate" class="org.esoft.hdb.ibatis.IbatisDaoCreator"H?nbsp;  
  98.   Hproperty name="sqlMapClient" ref="sqlMapClient"/H?nbsp;  
  99.    H?beanH?nbsp;  
  100.      
  101.    Hbean id="foodService" class="org.esoft.hdb.service.FoodServiceImpl"H?nbsp;  
  102.   Hproperty name="creator" ref="daoCreate"/H?nbsp;  
  103.    H?beanH?nbsp;  
  104.      
  105.      
  106.    Haop:configH?nbsp;  
  107.   Haop:pointcut id="foodServiceMethods"   
  108.  expression="execution(* org.esoft.hdb.service.FoodService.*(..))"/H?nbsp;  
  109.   Haop:advisor advice-ref="txAdvice" pointcut-ref="foodServiceMethods"/H?nbsp;  
  110.    H?aop:configH?nbsp;  
  111.    Htx:advice id="txAdvice" transaction-manager="transactionManager"H?nbsp;  
  112.   Htx:attributesH?nbsp;  
  113.  Htx:method name="*" propagation="REQUIRED"/H?nbsp;  
  114.   H?tx:attributesH?nbsp;  
  115.    H?tx:adviceH?nbsp; 

单的试Q?/p>

  1. save :   
  2.     Food food = new Food();   
  3.     food.setPk("1");   
  4.     food.setName("food1");   
  5.     BufferedInputStream in = new BufferedInputStream(getClass()   
  6.   .getResourceAsStream("/1.gif"));   
  7.     byte[] b = FileCopyUtils.copyToByteArray(in);   
  8.     food.setImage(b);   
  9.   in = new BufferedInputStream(getClass().getResourceAsStream(   
  10.   "/hibernate.cfg.xml"));   
  11.     b = FileCopyUtils.copyToByteArray(in);   
  12.     food.setContent(new String(b));   
  13.     foodService.save(food);   
  14. update:   
  15. Food food = foodService.get("1");   
  16.     BufferedInputStream in = new BufferedInputStream(getClass()   
  17.   .getResourceAsStream("/jdbc.properties"));   
  18.     byte[] b = FileCopyUtils.copyToByteArray(in);   
  19.     food.setContent(new String(b));   
  20.     foodService.update(food);   
  21.     food = foodService.get("1");   
  22.     assertNotNull(food.getImage());  


suplayer 2011-07-30 16:35 发表评论
]]>
ORACLE表解?/title><link>http://www.aygfsteel.com/suplayer/archive/2011/07/30/355404.html</link><dc:creator>suplayer</dc:creator><author>suplayer</author><pubDate>Sat, 30 Jul 2011 08:33:00 GMT</pubDate><guid>http://www.aygfsteel.com/suplayer/archive/2011/07/30/355404.html</guid><wfw:comment>http://www.aygfsteel.com/suplayer/comments/355404.html</wfw:comment><comments>http://www.aygfsteel.com/suplayer/archive/2011/07/30/355404.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/suplayer/comments/commentRss/355404.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/suplayer/services/trackbacks/355404.html</trackback:ping><description><![CDATA[<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #0000ff">select</span><span style="color: #000000"> sess.sid,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   sess.serial#,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   lo.oracle_username,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   lo.os_user_name,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   ao.</span><span style="color: #ff00ff">object_name</span><span style="color: #000000">,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   lo.locked_mode<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   </span><span style="color: #0000ff">from</span><span style="color: #000000"> v$locked_object lo,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   dba_objects ao,<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" />   v$session sess<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #0000ff">where</span><span style="color: #000000"> ao.</span><span style="color: #ff00ff">object_id</span><span style="color: #000000"> </span><span style="color: #808080">=</span><span style="color: #000000"> lo.</span><span style="color: #ff00ff">object_id</span><span style="color: #000000"> </span><span style="color: #808080">and</span><span style="color: #000000"> lo.session_id </span><span style="color: #808080">=</span><span style="color: #000000"> sess.SID;</span></div>获得未提交的事物的列表和基础信息 <br />然后Ҏ(gu) sessionID和serial#号强制关闭事物:<br /><br /> <div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" /><span style="color: #0000ff">ALTER</span><span style="color: #000000"> SYSTEM </span><span style="color: #0000ff">KILL</span><span style="color: #000000"> SESSION </span><span style="color: #ff0000">'</span><span style="color: #ff0000">9,108</span><span style="color: #ff0000">'</span><span style="color: #000000">;<br /><img align="top" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" alt="" /></span><span style="color: #008080">--</span><span style="color: #008080">'9,108'为sessionID和serial#?逗号分开</span></div><br /><br /><img src ="http://www.aygfsteel.com/suplayer/aggbug/355404.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/suplayer/" target="_blank">suplayer</a> 2011-07-30 16:33 <a href="http://www.aygfsteel.com/suplayer/archive/2011/07/30/355404.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>UMLcMcM间的关系http://www.aygfsteel.com/suplayer/archive/2010/05/07/320267.htmlsuplayersuplayerFri, 07 May 2010 04:47:00 GMThttp://www.aygfsteel.com/suplayer/archive/2010/05/07/320267.htmlhttp://www.aygfsteel.com/suplayer/comments/320267.htmlhttp://www.aygfsteel.com/suplayer/archive/2010/05/07/320267.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/320267.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/320267.htmlhttp://www.javaeye.com/topic/37302

cMcM间的关系对于理解面向对象h很重要的作用Q以前在面试的时候也l常被问到这个问题,在这里我׃l一下?br /> cMcM间存在以下关p?
(1)泛化(Generalization)
(2)兌(Association)
(3)依赖(Dependency)
(4)聚合(Aggregation)

UML图与应用代码例子:
1.泛化(Generalization)
[泛化]
表示cMcM间的l承关系Q接口与接口之间的承关p,或类Ҏ(gu)口的实现关系。一般化的关pL从子cL向父cȝQ与l承或实现的Ҏ(gu)相反?br /> [具体表现]
父类 父类实例Qnew 子类()
[UML图](?.1)

?.1 AnimalcMTigerc?Dogcȝ泛化关系

[代码表现]

  1. class Animal{}   
  2. class Tiger extends Animal{}   
  3. public class Test   
  4. {   
  5.     public void test()   
  6.     {   
  7.         Animal a=new Tiger();   
  8.     }   
  9. }  

2.依赖(Dependency)
[依赖]
对于两个相对独立的对象,当一个对象负责构造另一个对象的实例Q或者依赖另一个对象的服务Ӟq两个对象之间主要体Cؓ依赖关系?br /> [具体表现]
依赖关系表现?font color="#ff0000">局部变?/font>Q?font color="#ff0000">Ҏ(gu)的参?/font>Q以及对静态方法的调用
[现实例子]
比如说你要去拧螺丝,你是不是要借助(也就是依?Z刀(Screwdriver)来帮助你完成拧螺?screw)的工?br /> [UML表现](?.2)


?.2 PersoncMScrewdrivercȝ依赖关系

[代码表现]

  1. public class Person{   
  2.     /** 拧螺?nbsp;*/  
  3.     public void screw(Screwdriver screwdriver){   
  4.         screwdriver.screw();   
  5.     }   
  6. }  

3.兌(Association)
[兌]
对于两个相对独立的对象,当一个对象的实例与另一个对象的一些特定实例存在固定的对应关系Ӟq两个对象之间ؓ兌关系?br /> [具体表现]
兌关系是?font color="#ff0000">实例变量
来实?br /> [现实例子]
比如客户和订单,每个订单对应特定的客P每个客户对应一些特定的订单Q再例如公司和员工,每个公司对应一些特定的员工Q每个员工对应一特定的公?br /> [UML图] (?.3)

?.3 公司和员工的兌关系


[代码表现]
  1. public class Company{   
  2.     private Employee employee;   
  3.     public Employee getEmployee(){   
  4.         return employee;   
  5.     }   
  6.     public void setEmployee(Employee employee){   
  7.         this.employee=employee;   
  8.     }   
  9.     //公司q作   
  10.     public void run(){   
  11.         employee.startWorking();   
  12.     }   
  13. }  
(4)聚合QAggregationQ?/font>
[聚合]
当对象A被加入到对象B中,成ؓ对象B的组成部分时Q对象B和对象A之间集关pR聚合是兌关系的一U,是较强的兌关系Q强调的?font color="#ff0000">整体?font color="#ff0000">部分
之间的关pR?br /> [具体表现]
与关联关pMP聚合关系也是通过实例变量来实现这样关pȝ。关联关pd聚合关系来语法上是没办法区分的,?font color="#ff0000">语义上才?font color="#ff0000">更好的区?/font>两者的区别?br /> [兌与聚合的区别]
(1)兌关系所涉及的两个对象是处在同一个层ơ上的。比如h和自行R是一U关联关p,而不是聚合关p,因ؓZ是由自行车组成的?br /> 聚合关系涉及的两个对象处于不q等的层ơ上Q一个代表整体,一个代表部分。比如电(sh)脑和它的昄器、键盘、主板以及内存就是聚集关p,因ؓL是电(sh)脑的l成部分?br /> (2)对于h聚集关系Q尤其是集关p)的两个对象,整体对象会制U它的组成对象的生命周期。部分类的对象不能单独存在,它的生命周期依赖于整体类的对象的生命周期Q当整体消失Q部分也随之消失。比如张三的?sh)脑被偷了,那么电(sh)脑的所有组件也不存在了Q除非张三事先把一些电(sh)脑的lgQ比如硬盘和内存Q拆了下来?br /> [UML图](?.4)

?.3 ?sh)脑和组件的聚合关?/font>

[代码表现]
  1. public class Computer{   
  2.     private CPU cpu;   
  3.     public CPU getCPU(){   
  4.         return cpu;   
  5.     }   
  6.     public void setCPU(CPU cpu){   
  7.         this.cpu=cpu;   
  8.     }   
  9.     //开启电(sh)?  
  10.     public void start(){   
  11.         //cpuq作   
  12.         cpu.run();   
  13.     }   
  14. }  



suplayer 2010-05-07 12:47 发表评论
]]>
解决eclipse?60启动冲突http://www.aygfsteel.com/suplayer/archive/2010/04/13/318104.htmlsuplayersuplayerTue, 13 Apr 2010 00:45:00 GMThttp://www.aygfsteel.com/suplayer/archive/2010/04/13/318104.htmlhttp://www.aygfsteel.com/suplayer/comments/318104.htmlhttp://www.aygfsteel.com/suplayer/archive/2010/04/13/318104.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/318104.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/318104.html

suplayer 2010-04-13 08:45 发表评论
]]>
Oracle 10g Express Edition字符集修?/title><link>http://www.aygfsteel.com/suplayer/archive/2009/11/27/303968.html</link><dc:creator>suplayer</dc:creator><author>suplayer</author><pubDate>Fri, 27 Nov 2009 11:56:00 GMT</pubDate><guid>http://www.aygfsteel.com/suplayer/archive/2009/11/27/303968.html</guid><wfw:comment>http://www.aygfsteel.com/suplayer/comments/303968.html</wfw:comment><comments>http://www.aygfsteel.com/suplayer/archive/2009/11/27/303968.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/suplayer/comments/commentRss/303968.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/suplayer/services/trackbacks/303968.html</trackback:ping><description><![CDATA[<p> Oracle 10g Express Edition是Oracle专门为小型用h供的免费版本。Oracle XE十分yQ安装简单,可供W三方Y件开发商部v较小的应用?nbsp; </p> <p>  不过Oracle XE目前的beta2~省安装的字W集是WE8MSWIN1252Q不是中文字W集Qƈ且不能通过直接q行 alter  database  character  set  ZHS16GBK  ; 来修改,因ؓZHS16GBK不是~省字符集的集。过L传很q的直接修改sys用户下的PROPS$表的Ҏ(gu),也会l字W集的变更留下很多潜在的问题.  </p> <p>  不过在安装完Oracle XE后,可以在sqlplus(即Oracle XE的run SQL command line)中, q行如下的操作来修改字符集:  </p> <p>connect  system/oracle9i  as  sysdba  </p> <p>shutdown  immediate  </p> <p>startup  mount  </p> <p>alter  system  enable  restricted  session  ;  </p> <p>alter  system  set  JOB_QUEUE_PROCESSES=0;  </p> <p>alter  system  set  AQ_TM_PROCESSES=0;  </p> <p>alter  database  open  ;  </p> <p>alter  database  character  set  internal_use  ZHS16GBK  ;  </p> <p>shutdown  immediate  </p> <p>startup  </p> <p>q样字符集的修改完成了</p> <p><br /> 摘自U色黑客联盟(www.7747.net) 原文Qhttp://www.7747.net/px/200902/34068.html</p> <img src ="http://www.aygfsteel.com/suplayer/aggbug/303968.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/suplayer/" target="_blank">suplayer</a> 2009-11-27 19:56 <a href="http://www.aygfsteel.com/suplayer/archive/2009/11/27/303968.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>解决Oracle XE允许q接的用h不问题http://www.aygfsteel.com/suplayer/archive/2009/11/27/303967.htmlsuplayersuplayerFri, 27 Nov 2009 11:54:00 GMThttp://www.aygfsteel.com/suplayer/archive/2009/11/27/303967.htmlhttp://www.aygfsteel.com/suplayer/comments/303967.htmlhttp://www.aygfsteel.com/suplayer/archive/2009/11/27/303967.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/303967.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/303967.html

在数据库服务器上q行 sqlplus system/password@xe (其中 system 是数据库用户无需改变Qpassword 是数据库密码应指定ؓ实际密码Qxe 是数据库实例名称) Q然后执行:

alter system set session_cached_cursors=200 scope=spfile;
alter system set session_max_open_files=200 scope=spfile;
alter system set sessions=20 scope=spfile;
alter system set license_max_sessions=200 scope=spfile;
alter system set license_sessions_warning=200 scope=spfile;
alter system set processes=200 scope=spfile;

执行后,重启 Oracle XE 数据库实例即可。要重启 Oracle XE 数据库实例:

1. 如安装于 Windows 上,先运?net stop oracleservicexeQ再q行 net start oracleservicexe 卛_。也可通过“服务”理控制台重?OracleServiceXE 服务?br /> 2. 如安装于 Linux 上,先运?/etc/init.d/oracle-xe startQ再q行 /etc/init.d/oracle-xe stop 卛_?/p>

此时Q可以支?179 个额外的q接会话?br />



suplayer 2009-11-27 19:54 发表评论
]]>
如何改变Oracle 10g Express Edition默认?080端口http://www.aygfsteel.com/suplayer/archive/2009/11/27/303966.htmlsuplayersuplayerFri, 27 Nov 2009 11:53:00 GMThttp://www.aygfsteel.com/suplayer/archive/2009/11/27/303966.htmlhttp://www.aygfsteel.com/suplayer/comments/303966.htmlhttp://www.aygfsteel.com/suplayer/archive/2009/11/27/303966.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/303966.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/303966.html选择“q行SQL命o”Q进入如下提C符
SQL>
首先q接到服务器
connect 用户?密码
登陆后输入如下命令:
sql 代码
1.call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),'/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()',8081));    
其中8081是修改后的端口,可以L?br />  
q样你就不会与Tomcat的默认端口冲H了Q方便开发?/p>

ftp服务占用2100端口Q更改命令是Q?br /> sql 代码
1.call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get() , '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()', 2111));   



suplayer 2009-11-27 19:53 发表评论
]]>
Eclipse插g安装?U方?/title><link>http://www.aygfsteel.com/suplayer/archive/2009/09/06/294063.html</link><dc:creator>suplayer</dc:creator><author>suplayer</author><pubDate>Sun, 06 Sep 2009 07:21:00 GMT</pubDate><guid>http://www.aygfsteel.com/suplayer/archive/2009/09/06/294063.html</guid><wfw:comment>http://www.aygfsteel.com/suplayer/comments/294063.html</wfw:comment><comments>http://www.aygfsteel.com/suplayer/archive/2009/09/06/294063.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/suplayer/comments/commentRss/294063.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/suplayer/services/trackbacks/294063.html</trackback:ping><description><![CDATA[<p> </p> <p>   1. 把插件文件直接覆盖到eclipse目录?br />    2. 使用link文gQ就是把插g存放CQ一的地方(例如/eclipse/MyPulsQ?然后 在eclipse的文件夹里新Z个links的文Ӟ在里面添加一些后q名?link的文Ӟ例如emfPlugins.linkQ结构是q样的:</p> <p>          /eclipse/<br />                links/<br />                     emfPlugins.link<br />                     webtools.link<br />                     updateManager.link<br />                     ...<br />                ...</p> <p>          link文g的里包含q样一条 “path=D:\\JavaDev\\plugins\\vssplugin”q个路径是插g的存放\径?/p> <p>   3. 使用eclipse自带的图形界面的插g安装Ҏ(gu)Q选择Help > Software Updates > Manager Configuration</p> <p>    在选择Add > Extension Location 扑ֈ你要安装插g的目录就可以了。强烈推荐这U方法,优点很多比如可以方便的添加删除,也不用自己写link文gQ?/p> <p>备注QEclipse插g的目录结?/p> <p>    /eclipse-plugins/<br />        eclipse/<br />           .eclipseextension<br />           features/<br />           plugins/</p> <p>    W??U方法所指向的目录都指的?eclipse"目录Q?/p> <p>    如果用第3U方法,在eclipseq个目录下必L文g.eclipseextensionQ如果你下的插g没有q个文gQ那随便eclipse安装目录下的那个文g靠过d行了Q只有有q么个文件就可以了,内容没什么用Q主要是一些版本信息!例如Q?/p> <p>    id=org.eclipse.platform name=Eclipse Platformversion=3.3.1</p> <p> </p> <img src ="http://www.aygfsteel.com/suplayer/aggbug/294063.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/suplayer/" target="_blank">suplayer</a> 2009-09-06 15:21 <a href="http://www.aygfsteel.com/suplayer/archive/2009/09/06/294063.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>创徏XMLHtttRequest对象http://www.aygfsteel.com/suplayer/archive/2009/09/04/293938.htmlsuplayersuplayerFri, 04 Sep 2009 13:18:00 GMThttp://www.aygfsteel.com/suplayer/archive/2009/09/04/293938.htmlhttp://www.aygfsteel.com/suplayer/comments/293938.htmlhttp://www.aygfsteel.com/suplayer/archive/2009/09/04/293938.html#Feedback0http://www.aygfsteel.com/suplayer/comments/commentRss/293938.htmlhttp://www.aygfsteel.com/suplayer/services/trackbacks/293938.html创徏XMLHtttRequest对象(针对mozillaQIE8,FF,IE5,IE5.5,IE6,IE7)
//2、创建XMLHttpRequest对象
    //q其实是XMLHttpReqest对象使用最复杂的一?br />     //针对IE和其他类型浏览器建立q个对象的不同方式写不同的代?br />    
    if(window.XMLHttpRequest){
    //针对firefox,mozillaz,opera,IE7,IE8
        xmlhttp = new XMLHttpRequest();
        //用于修复某些Mozillaz览器bug
        if(xmlhttp.overrideMimeType)
        {
            xmlhttp.overrideMimeType("text/xml");
        }
    }
    else if(window.ActiveXObject){
        //针对IE6QIE5.5QIE5
        //两个都可以创建XMLHttpRequest对象Q保存在js数组?br />         var activeName=["MSXML2.XMLHTTP","Microsoft.XMLHTTP"];

//var activeName= ['MSXML2.XMLHTTP.6.0','MSXML2.XMLHTTP.5.0', //'MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0', //'MSXML2.XMLHTTP','Microsoft.XMLHTTP'];
        for(var i =0;i<activeName.length;i++)
        {//取出一个控件名来创建XMLHttpRequest对象Q创建成功就l止循环Q如果创建失败可以l创?br />         //可以抛出异常Ql创?br />             try{
                xmlhttp= new ActiveXObject(activeName[i]);
                break;
            }catch(e){
            }
        }
       
    }
    //认XMLHttpRequest对象已经创徏成功
    if(!xmlhttp)
    {
        alert("XmlHttpRequest创徏p|");
        return;
    }   
   
   
    //3、注册回调函敎ͼ函数名后面不要加括号
    //如果加了括号Q就变成了调用函敎ͼ会把函数的返回值发挥给xmlhttpQ没有达到我们的目的  
    xmlhttp.onreadystatechange=callback;
   
    //4、设|连接信?br />     //W一个参数设|httph方式Q主要是get和post两种方式
    //W二个参数是uri地址
    //W三个参数表C异步交互还是同步交互方式,true表示异步Qfalse表示同步
    xmlhttp.open("GET","/JQuery/servlet/AjaxServlet?name="+username,true);
   
    //5、发送数据开始和服务器端交互
    //同步方式下,sendq句话会在服务器端的数据回来后,才执行完
    //异步方式下,send会立x行完
    xmlhttp.send(null);
}
//5、写回调函数
//回调函数
function callback(){
    //接收相应的相应数?br />     //判断交互状态已l完?br />     if(xmlhttp.readyState ==4)
    {
        //判断h(hun)ttp的交互状?br />         if(xmlhttp.status == 200)
        {
           //获取服务器端q回的数?br />             //获取服务器端U文本数?br />             var responseText = xmlhttp.responseText;
            //数据显C在面?br />             //通过dom获取div元素节点
            var divNode =document.getElementById("result");
            //讄元素节点的html内容
            divNode.innerHTML=responseText;
        }   
    }

 



suplayer 2009-09-04 21:18 发表评论
]]>
վ֩ģ壺 ľ| | | Դ| ˹| İ| | | ţ| ¡| | | ˮ| ̨| ǿ| | ʯ| | | ʼ| | | ָɽ| ܱ| | ߺ| | ׿| | ݳ| ͨ| ƽ| κ| Ī| | | | | ¸| | |