在jsp页面上怎样实现多条件查询 5C

页面上表格里出现有一个查询的按钮和一个查询姓名的文本框,并且在下面表格中显示

3个回答

如果不想有全页面刷新的效果,
那么需要ajax发送请求到服务端,然后将响应的数据更新进表格。

建议使用表格控件,如flexigrid,datagrid,extjs等
这些全部支持表格的局部刷新和查询

jqueryajax 异步请求 局部刷新界面

abc123wawy
abc123wawy 那是用ajax自动补全功能吗 可是我只想点击查询按钮的时候才会出现数据
3 年多之前 回复

你先隐藏,然后点击查询的时候显示你要的数据不就得了嘛。

li953348869
是星星总会发光 回复abc123wawy: <if test="params.proname!=null and params.proname!=''"> AND pro.proname LIKE #{params.proname} </if>
3 年多之前 回复
abc123wawy
abc123wawy 这是连接数据库的,有四个表的多表查询 有查询全部的,这个我写出来了,还有按条件查询,我现在按条件查询不是太会
3 年多之前 回复
li953348869
是星星总会发光 我说的用ajax哦
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
基于servlet jsp页面查询条件回显及分页
在公司之前的老项目上完善新功能,纯servlet jsp页面, 做条件查询时不能回显查询条件,我在后台把前台数据接收后存在session中,然后从jsp页面直接取,但是结果每次回显的是我上一次的查询,也就是我查询"2"的时候,回显的是"1",大神给看看是 另外就是目前条件查询后点击下一页,又把所有的数据查出来了.![图片说明](https://img-ask.csdn.net/upload/201905/11/1557566762_480988.png) action 是执行当前页面,页面中有个方法查询数据库![图片说明](https://img-ask.csdn.net/upload/201905/11/1557566978_215553.png) ![图片说明](https://img-ask.csdn.net/upload/201905/11/1557567021_9586.png)![图片说明](https://img-ask.csdn.net/upload/201905/11/1557567095_290470.png) 最后一张图是后台代码.搞了一下午,我感觉条件查询后分页就办法实现,不知道大佬们有什么解决思路 后台没有按照dao service action分开写,所有的业务都写在一个class里,包括sql语句
JSP页面,想将查询和结果显示在同一页面
输入条件,点击查询后,将查询结构显示在下面,应该怎样实现。现在一加载页面下面就有空的结果返回。
如何在jsp页面实现类似于金山词霸的划词功能
如何在jsp页面实现类似于金山词霸的划词功能 详细说明: jsp页面显示的一些关键字段信息列表 然后我需要选择某个字段能够通过鼠标划词显示其具体的信息 类似于金山词霸的划词功能怎么实现? 个人想到的肯定用js来实现 有做过的JE友麻烦指点下,,,谢谢 [b]问题补充:[/b] 我要的是 划词后 根据划词部分的内容作为条件去数据表中拿旗整条记录的信息 你给我的我测试过 是用到Google的serach 谢谢你的代码 [b]问题补充:[/b] 我想可以通过DWR来实现 从数据表取数据进行显示 yougame的代码和 第一位的相同 有没有自己实现过类似功能的 Google的 我很怀疑.....
求一份Struts2+Spring+mybatis整合的增删改查及分页和多条件查询的源代码
小白求一份Struts2+Spring+mybatis整合的增删改查及分页和多条件查询的源代码,用jQuery实现jsp页面
查完的数据在JSP显示,不足的地方用空白显示
根据条件查询,然后查出的数据显示在页面上 假如这个页面有5个位置A,B,C,D,E,然后查到了2个数据,显示在A,B位置上, C,D,E位置保持空白,JSP的页面代码如何实现
jsp如何实现导出导入Excel文件?
需求:1、将jsp条件查询的结果以Excel形式导出,填写后可覆盖字段的记录(字段不增加)导入;2、导出时弹出存储路径对话框,由用户指定 背景:没有使用框架,条件查询的结果是将jdbc查询的结果集放入ArrayList中提取展现在页面的
jsp遍历集合按条件放入表格
Java,jsp页面遍历后台传来的一个double类型的集合,从大到小排序放到表格里,表格一行放四个,自动换行,但是在放到表格的同时,计算每一列的总和,总和大于100就不放哪个格子了,自动放到下个格子,这个功能怎么实现啊,求大神指点 ,求完整代码
jsp中如何设置在满足条件的情况下显示出数据?不满足就不显示
本人目前在做一个小博客系统,想实现这样的功能,请教下各位大神 点击主页列出的会员账号就进入其主页,登陆时我会将本人账号保存在session中,然后根据session.userid和所点击的userid进行比较,如果相等,就代表进入自己的主页,显示删除,编辑等功能按键。如果不同就不显示。 请问jsp标签中有么有类似这种功能的?hidden标签有这种功能么? 我之前想的是在后台判断,根据判断进入有功能键和没功能键的2个页面,但这样好麻烦。因此来提问。
dbutils和c3p0带条件查询出错
![这个是dao实现层](https://img-ask.csdn.net/upload/201710/09/1507557600_169978.png) ![这个是service实现层](https://img-ask.csdn.net/upload/201710/09/1507557648_427467.png) ![这个是jsp页面](https://img-ask.csdn.net/upload/201710/09/1507557686_850006.png) ![这个是获取的servlet](https://img-ask.csdn.net/upload/201710/09/1507557716_740712.png) ![这个是报的错](https://img-ask.csdn.net/upload/201710/09/1507557738_788792.png) 大佬帮我看看我哪里错了,怎么改吖。
springSecurity如何在配置文件中配置需要放行的
1.虽然注册页面我配置了放行,但是注册页面上的请求全部被springsecurity安全框架拦截了,请问如何在配置文件中配置放行指定的get/post请求吗?以下是配置文件 ``` <!--放行不需要拦截的资源页面--> <security:http pattern="/login.jsp" security="none"></security:http> <security:http pattern="/failer.jsp" security="none"></security:http> <security:http pattern="/403.jsp" security="none"></security:http> <security:http pattern="/register.jsp" security="none"></security:http> <security:http pattern="/sampling.jsp" security="none"></security:http> <!--<security:http pattern="/index.jsp" security="none"></security:http>--> <security:http pattern="/css/**" security="none"></security:http> <security:http pattern="/img/**" security="none"></security:http> <security:http pattern="/pages/**" security="none"></security:http> <security:http pattern="/plugins/**" security="none"></security:http> <!--配置拦截的规则和放行的条件 auto-config 支持默认的配置 use-expression 使用表达式 为false 关闭表达式 intercept-url 拦截的资源规则 access 允许访问的角色条件 --> <security:http auto-config="true" use-expressions="false"> <!--多个角色之间是或者的关系 任意角色即可登录--> <security:intercept-url pattern="/**" access="ROLE_USER,ROLE_TEST"></security:intercept-url> <!-- login-page 自定义登录页面 login-processing-url 登录页面form表单请求的url地址 default-target-url 登录成功目标页面 authentication-failure-url 登录失败的页面 --> <security:form-login login-page="/login.jsp" login-processing-url="/login" default-target-url="/index.jsp" authentication-failure-url="/failer.jsp"></security:form-login> <!--配置登录成功权限不足的处理--> <security:access-denied-handler error-page="/403.jsp"></security:access-denied-handler> <!--关闭跨域请求的拦截--> <security:csrf disabled="true"></security:csrf> <!--配置退出的过滤器 invalidate-session="true" session过期 logout-success-url 退出成功的跳转页 logout-url 页面发起退出请求的路径 --> <security:logout invalidate-session="true" logout-success-url="/login.jsp" logout-url="/logout"></security:logout> </security:http> <!--配置拦截访问的验证--> <security:authentication-manager> <security:authentication-provider user-service-ref="userService"> <!--验证过的业务实现类使用框架的UserDetailService--> <!--初始化固定的账号用于测试 {noop}表示密码验证方式为明文验证 原始密码 123456 密文验证 加密密码 fd34falfacdffa34rfafadfa <security:user name="user" password="{noop}user" authorities="ROLE_USER"></security:user> <security:user name="admin" password="{noop}admin" authorities="ROLE_ADMIN"></security:user> --> <!--选择系统默认的加密方式--> <security:password-encoder hash="bcrypt"></security:password-encoder> </security:authentication-provider> </security:authentication-manager> <!--配置加密工具类的bean对象--> <bean id="pwdEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"></bean> </beans> ```
页面如何展现两个或多个表格?
[img]http://dl.iteye.com/upload/attachment/143660/a546bfcb-b38d-3fcc-8cd1-87ab59732833.jpg[/img] 界面设计图如上图。 一个界面要竖排显示几个表格,并且还有其他固定的字段,这种布局该怎么实现? 以前只展现一个表格的代码如下: JSP页面: [code="java"]<%@page contentType="text/html;charset=UTF-8"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gbk" /> <title>信息查询</title> <%@ include file="/common/gui_lib.jsp"%> <link href="gtcss.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="../../scripts/repository/misc/misc.js"></script> <script src="../../scripts/repository/ux/RowFitLayout.js" type="text/javascript"></script> <script type="text/javascript"> Ext.onReady(function() { Ext.QuickTips.init(); Ext.form.Field.prototype.msgTarget = 'side'; var formcondition = new cis.repository.stockorder.QueryCondition(); var integStatusGrid = new cis.repository.stockorder.ListPanel(); var view=new Ext.Viewport( { frame:true, layout:'row-fit', defaults: { bodyStyle: 'padding:4px 4px 4px 4px' }, items:[formcondition,integStatusGrid] }); view.doLayout(); }); </script> </head> <div id='tpl-table'/> </html> [/code] misc.js文件: [code="java"]Ext.ns("cis.repository.stockorder"); include('scripts/repository/locale/misc_zh.js'); include('scripts/repository/ux/PageSizePlugin.js'); include('scripts/repository/validator/Validators.js'); include('scripts/repository/ux/PagingToolBar.js'); include('scripts/repository/ux/RemoteValidator.js'); include('scripts/repository/ux/PagingMemoryProxy.js'); include('scripts/sysCommonData.js'); cis.repository.stockorder.QueryCondition = function() { var sendPhone = new Ext.form.TextField({ id : 'sendPhone', allowBlank : false, fieldLabel : this.resourceBundle.ConditionProperty.PHONE, selectOnFocus : true, anchor:'90%' }); var querybutton = new Ext.Button({ text : "查询", minWidth : '75', handler : function() { var gridPanel = Ext.getCmp("list-stockOrder-form-panel"); if(Ext.getCmp('stockOrder-query').checkData()){ var gridPanelStore = gridPanel.getStore(); gridPanelStore.baseParams.sendPhone = sendPhone .getValue(); gridPanelStore.removeAll(); gridPanelStore.load({ params : { start : 0, limit : gridPanel.myPageSize } }); } } }); cis.repository.stockorder.QueryCondition.superclass.constructor.call( this, { id : 'stockOrder-query', title :"查询条件", width : '100%', height : 70, border : true, frame : true, collapsible : true, deferredRender : false, labelAlign : 'right', items : [{ layout : "column", bodyStyle:"padding:1px 10px 5px 10px", items : [{ columnWidth : .40, layout : 'form', labelWidth:55, items : [sendPhone] }, { columnWidth : .20, layout : 'form', buttonAlign:'left', items : [querybutton] }] }] }); }; Ext.extend(cis.repository.stockorder.QueryCondition, Ext.form.FormPanel, {}); cis.repository.stockorder.ListPanel = function() { var fm = Ext.form; this.myPageSize = 20; // column model var commCM = new Ext.grid.ColumnModel([{ id : 'sp', align : 'center', header : SP, dataIndex : 'sp', width : 150, editor:new fm.TextField, sortable : true }, { id : 'operation', align : 'center', header : OPERATION, dataIndex : 'operation', width : 150, editor:new fm.TextField, sortable : true } ]); commCM.defaultSortable = false; var commRecord = new Ext.data.Record.create([{ name : 'sp', mapping : 'sp' }, { name : 'operation', mapping : 'operation' }]); // reader is for Data Reading from DB or Local Data var communicateReader = new Ext.data.JsonReader({ root : 'elements', totalProperty : 'totalElements', id : 'id' }, commRecord); this.dataStore = new Ext.data.GroupingStore({ proxy : new Ext.data.HttpProxy({ url : '../../extend/misc/qryMobile.action' }), reader : communicateReader //autoLoad : true }); var pagingbar = new Ext.PagingToolbar({ pageSize : this.myPageSize, store : this.dataStore, displayInfo : true, plugins : [new Ext.ux.PageSizePlugin()] }); cis.repository.stockorder.ListPanel.superclass.constructor.call(this, { id : 'list-stockOrder-form-panel', collapsible : false, region : 'center', store : this.dataStore, colModel : commCM, frame : true, // bodyStyle : 'width:100%', title : "", clicksToEdit :2, bbar : pagingbar, stripeRows : true, autoScroll : true, viewConfig : { enableRowBody:false }, loadMask : { msg : MSG_DATA_LOADING }, width : '100%', height : '80%', layout : 'fit', monitorResize : true, doLayout : function() { this.setWidth(Ext.get(this.getEl().dom.parentNode) .getSize(true).width); Ext.grid.GridPanel.prototype.doLayout.call(this); }, autoShow : true, border : false }); } Ext.extend(cis.repository.stockorder.ListPanel, Ext.grid.EditorGridPanel, { reload : function() { this.dataStore.load({ params : { start : 0, limit : this.myPageSize }, delay : 750 }); } }); [/code] 以上是我展现一个表格的代码,现在该怎么办呢?
弹出框关闭的问题
1.我在a.jsp页面弹出了一个查询的对话框b.jsp,b.jsp提交前怎么验证数据? 2.我现在实现了b.jsp提交后刷新a.jsp,但是没有关闭b.jsp,怎么关闭b.jsp? 问题:b.jsp提交前验证数据,提交后刷新a.jsp同时关闭b.jsp,也就是提交前事件和提交后事件 注:本人不会刚才开始学习ajax和jquery b.jsp <div class="pageContent"> <form method="post" action="getAllSchool.action" onsubmit="return navTabSearch(this);"> <div class="pageFormContent" layoutH="58"> <div> <label>&nbsp;</label> <input type="hidden" size="25" alt="字母、数字、下划线"/> </div> <div> <label>管理员编码:</label> <input type="text" name="search.code" size="25" class="required"/> </div> <div> <label>&nbsp;</label> <input type="hidden" size="25"/> </div> <div> <label>管理员名称:</label> <input type="text" size="25" name="search.name" alt="关键字或全名"/> </div> <div> <label>&nbsp;</label> <input type="hidden" size="25"/> </div> <div> <label>注册日期:</label> <select class="required" name="search.mark"> <option value="=">=</option> <option value=">=">>=</option> <option value="<="><=</option> </select> <input type="text" name="search.date" class="date" size="16" readonly="readonly"/> </div> <div class="divider">divider</div> <div> <label>排序条件:</label> <select name="search.sort"> <option value="arc">按升序排序</option> <option value="desc">按降序排序</option> <option value="date">按日期排序</option> </select> </div> </div> <div class="formBar"> <ul> <li><div class="buttonActive"><div class="buttonContent"><button type="submit">检索</button></div></div></li> <li><div class="button"><div class="buttonContent"><button type="reset">清空</button></div></div></li> <li><div class="button"><div class="buttonContent"><button type="button" class="close">取消</button></div></div></li> </ul> </div> </form> </div> 刷新处理: /** * 处理navTab弹出层上的查询, 会重新载入当前navTab * @param {Object} form */ function navTabSearch(form, navTabId){ if (form[DWZ.pageInfo.pageNum]) form[DWZ.pageInfo.pageNum].value = 1; navTab.reload(form.action, {data: $(form).serializeArray(), navTabId:navTabId}); return false; } /** * 处理dialog弹出层上的查询, 会重新载入当前dialog * @param {Object} form */ function dialogSearch(form){ if (form[DWZ.pageInfo.pageNum]) form[DWZ.pageInfo.pageNum].value = 1; $.pdialog.reload(form.action, {data: $(form).serializeArray()}); return false; } function dwzSearch(form, targetType){ if (targetType == "dialog") dialogSearch(form); else navTabSearch(form); return false; } //返回处理 return LIST;
S2SH项目中的一个遍历问题(!)
描述: 一个S2SH项目: [code="java"]Map request=(Map)ActionContext.getContext().get("request"); request.put("list", aboutUsService.findAll());[/code] 是找出数据库里表(aboutUs)所有记录,其中的字段有:标题(title),内容(content)等等放到list里面。 目的: 在action里面把aboutUsService.findAll()找到的记录的每一个字段取出来。 例如:aboutUsService.findAll().get(0).getTitle()是找到第一条记录的title。 我想这样: [code="java"]Map request=(Map)ActionContext.getContext().get("request"); request.put("titleList", aboutUsService.findAll().get(0).getTitle()); request.put("titleList", aboutUsService.findAll().get(0).getContent()); request.put("urlList","我要放的URL地址")[/code] 然后循环的把那个字段放到前面对应的list里面,在jsp页面我知道怎么放,因为有个<s:iterator value" id=""> </s:iterator>标签,但是要在action里面的话 判断条件是什么呢? 说到底,其实我要实现的跟request.put("list", aboutUsService.findAll());差不多,它的已经封装好了,我只不过是手动的多添加一个request.put("urlList","我要放的URL地址")进去。 我的最终目的是应用在Lucene中。
做了一个小时的面试题(没有过 希望大家帮忙答下 虽然很幼稚 毕竟每个人都是这么过来的吗 感激了!)
XX软件工程师笔试试题 注:1、请参考人员将答案写在答题纸上,勿将答案写在此卷上。 2、请参考人员将编号与姓名填写在答题纸上。 1、 以下数据结构中不属于线性数据结构的是()。 A、队列 B、线性表 C、二叉树 D、栈 我的答案:C 2、 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是()。 A、 可行性分析 B、需求分析 C、详细设计 D、程序编码 我的答案:B 3、 结构化程序设计主要强调的是()。 A、 程序的规模 B、程序的易读性 C、程序的执行效率 D、程序的可移植性 我的答案:C 4、 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段()。 A、 概要设计 B、详细设计 C、可行性分析 D、需求分析 我的答案:B 5、 下列关于栈的叙述中正确的是()。 A、 在栈中只能插入数据 B、在栈中只能删除数据 B、 栈是先进先出的线性表 D、栈是先进后出的线性表 我的答案:D 6、 下面不属于软件设计原则的是()。 A、 抽象 B、模块化 C、自底向上 D、信息隐蔽 我的答案:C 7、 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为()。 A、 N+1 B、N C、(N+1)/2 D、N/2 我的答案:C 8、 视图设计一般有3种设计次序,下列不属于视图设计的是()。 A、 自顶向下 B、由外向内 C、由内向外 D、自底向上 我的答案:C 9、下列有关数据库的描述,正确的是()。 A、数据库是一个DBF文件 B、数据库是一个关系 C、数据库是一个结构化的数据集合 D、数据库是一组文件 我的答案:C 10、下列说法中,不属于数据模型所描述的内容的是()。 A、数据结构 B、数据操作 C、数据查询 D、数据约束 我的答案:A 11、若按功能划分,软件测试的方法通常分为白盒测试方法和(黑盒测试方法)。 12、数据库系统的三级模式分别为(级联)模式、内部级模式与外部级模式。 13、在最坏情况下,冒泡排序的时间复杂度为(N+1/2)。 14、在面向对象方法中,信息隐蔽是通过对象的(封装)性来实现的。 15、关系模型的数据操纵既是建立在关系上的数据操纵,一般有(插入)、增加、删除、和修改四种操作。 16、TIME()的返回值的数据类型是(String)类型。 17、编写SQL语句 1)、创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话 我的答案: create table student( studentCardNo number(2) primary key, name char(10), age number(2), sex char(2) check(sex in (‘男’,’女’)), address varchar2(100), tel number(2) ) 2)、修改学生表的结构,添加一列信息,学历 我的答案: alter table student add(xueli varchar2(20)); 3)、修改学生表的结构,删除一列信息,家庭住址 我的答案: alter table student drop column address; 4)、向学生表添加如下信息: 学号 姓名 年龄 性别 联系电话 学历 1 A 22 男 123456 小学 2 B 21 男 119 中学 3 C 23 男 110 高中 4 D 18 女 114 大学 我的答案: insert into student values(‘&1’,’&2’,’&3’); 一次一次添加 5)修改学生表的数据,将电话号码以11开头的学员的学历改为“大专” 我的答案: update student set xueli=”大专” where tel like 11%; 6)删除学生表的数据,姓名以C开头,性别为‘男’的记录删除 我的答案: delete student where name like C% or sex=”男”; 7)查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号显示出来 我的答案: select name,studentCardNo from student where age<22 and xueli=”大专”; 8)查询学生表的数据,查询所有信息,列出前25%的记录 我的答案: select top*0.25 from student; 9)查询出所有学生的姓名,性别,年龄降序排列 我的答案: select name,sex,age from student where age desc; 10)按照性别分组查询所有的平均年龄 我的答案: select avg(age) from student group by sex; 18、什么是存储过程?为什么存储过程要比单纯的SQL语句执行起来要快? 我的答案: 存储过程算是一种优化查询需要比单存SQL语句执行的要快 19、两张关联表,删除主表中已经在副表中没有的信息 我的答案 delete from fubiao a where a.fid not in(select id from zhubiao) 20、程序题: 用1、2、2、3、4、5这六个数字,用java或你熟悉的语言,打印出所有不同的排列,如:512234、412345等,要求:“4”不能再第三位,“3”与“5”不能相连。并将这些数据按从小到大输出。 我的答案 我的写的不好 没贴下 笔试的时候没写全 21、String 和 StringBuffer的区别 我的答案 String定长 StringBuffer 变长 22、&和&&的区别 我的答案 &短路与 &&逻辑与 网上答案: & 是位运算符,表示按位与运算, && 是逻辑运算符,表示逻辑与(and)。 23、final,finally,finalize的区别 我的答案 Final静变量关键字,finally异常关键字,finalize 网上答案 final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 finally是异常处理语句结构的一部分,表示总是执行。 finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法, 可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。 24、数组有没有length()这个方法?String有没有length()这个方法? 我的答案: 数组没有length()这个方法,有length的属性。 String有length()这个方法。 25、是否可以继承String类? 我的答案: 不可以 解释的很乱 26、说出数据连接池的工作机制是什么? 我的答案: 反正解释的很乱我感觉 27、垃圾回收的优点和原理。并考虑2种回收机制。 我的答案: 动态回收 解释的很乱 网上答案: Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解, 它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有"作用域"的概念, 只有对象的引用才有"作用域"。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。 垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有 使用的对象进行清除和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。 回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 28、你所知道的集合类都有哪些?区别?主要方法? 我的答案: Arraylist 非线性的、Vertor线性的 29、JSP的内置对象及方法。 我的答案: Page,exception,out,page content,application,request,reponse,session,config 30、页面间对象传递的方法。 我的答案: 那几个方法都写错了 31、你知道Request对象的主要方法有哪些? 32、J2EE是技术还是平台还是框架? 我的答案: J2EE是技术也是平台 网上答案: J2EE本身是一个标准,一个为企业分布式应用的开发提供的标准平台。 J2EE也是一个框架,包括JDBC、JNDI、RMI、JMS、EJB、JTA等技术。 33、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种(例如GBK编码类型)编码的字符串? Request encording(“GBK”) 34、j2ee常用的设计模式?说明工厂模式。 Gof23种设计模式 工厂模式:Factory 网上答案: Java中的23种设计模式: Factory(工厂模式), Builder(建造模式), Factory Method(工厂方法模式), Prototype(原始模型模式),Singleton(单例模式), Facade(门面模式), Adapter(适配器模式), Bridge(桥梁模式), Composite(合成模式), Decorator(装饰模式), Flyweight(享元模式), Proxy(代理模式), Command(命令模式), Interpreter(解释器模式), Visitor(访问者模式), Iterator(迭代子模式), Mediator(调停者模式), Memento(备忘录模式), Observer(观察者模式), State(状态模式), Strategy(策略模式), Template Method(模板方法模式), Chain Of Responsibleity(责任链模式) 工厂模式:工厂模式是一种经常被使用到的模式,根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例, 通常这一组类有一个公共的抽象父类并且实现了相同的方法,但是这些方法针对不同的数据进行了不同的操作。 首先需要定义一个基类,该类的子类通过不同的方法实现了基类中的方法。 然后需要定义一个工厂类,工厂类可以根据条件生成不同的子类实例。 当得到子类的实例后,开发人员可以调用基类中的方法而不必考虑到底返回的是哪一个子类的实例。 35、JSP四种会话跟踪技术 我的答案: Application cookie session 36、排序都有哪几种方法?请举例 冒泡 选择 快序 二分查找 网上答案: 排序的方法有:插入排序(直接插入排序、希尔排序), 交换排序(冒泡排序、快速排序), 选择排序(直接选择排序、堆排序), 归并排序,分配排序(箱排序、基数排序) 快速排序的伪代码。 //使用快速排序方法对a[ 0 :n- 1 ]排序 从a[ 0 :n- 1 ]中选择一个元素作为m i d d l e,该元素为支点 把余下的元素分割为两段left 和r i g h t,使得l e f t中的元素都小于等于支点,而right 中的元素都大于等于支点 递归地使用快速排序方法对left 进行排序 递归地使用快速排序方法对right 进行排序 所得结果为l e f t + m i d d l e + r i g h t 37、关于模块间的设计原则? 规范要一样 38、项目过程一般是怎样的?你参加过几个项目开发?参加过的项目流程是怎样的?自己负责与人合作工作内容及自我评价? 从需求调研——设计开发——实施 参加过网站的实施 模板的制作 39、tomcat自动关闭常见原因? 我的答案: 现在没遇到过 40、如何设置TOMCAT内存和连接数? 我的答案: Tomcat群集 41、你如何理解Tomcat是什么? 我的答案: Tomcat是JSP Servlet 容器恰当的说 42、静态变量和实例变量的区别? 我的答案: 静态变量域用final修饰,每次都被调用 实例变量则不会 43、IE、FF下面CSS的解释区别 我的答案: 自己编的 44、web前端技术你了解哪些技术? 我的答案: JAVAScript,CSS,DIV,Ajax,Ajax框架,DWR,dojo,jguery 45、什么是报表?什么是报表控件,作用是什么?你了解哪些报表工具? 我的答案: 解释的很乱 46、你了解的那些统计图表类型? 我的答案: 自己编的 47、Flex与数据库连接的三种方式? 我的答案: 自己编的 ------------------------------------------------------- 我答错的、 错在哪里? 没答上的帮忙解答下? 感激了 !
hibernate cannot be cast to [Ljava.lang.Object
问题是这样的 我用的是hibernate 框架做数据访问 因为用到spring security,我的用户实体类SysUser 实现了spring security的接口UserDetails SysUser.java代码如下 [code="java"] @Entity @Table(name="sys_user") @org.hibernate.annotations.Proxy(lazy = false) public class SysUser implements java.io.Serializable ,UserDetails{ private Integer userId; private String uloginName; private String upassword; //其他property及相关setter getter略 //实现UserDetails接口方法 @Override @Transient public Collection<? extends GrantedAuthority> getAuthorities() { // TODO Auto-generated method stub return null; } @Override @Transient public String getPassword() { // TODO Auto-generated method stub return this.upassword; } @Override @Transient public String getUsername() { // TODO Auto-generated method stub return this.uloginName; } @Override @Transient public boolean isAccountNonExpired() { // TODO Auto-generated method stub return true; } @Override @Transient public boolean isAccountNonLocked() { // TODO Auto-generated method stub return true; } @Override @Transient public boolean isCredentialsNonExpired() { // TODO Auto-generated method stub return true; } @Override @Transient public boolean isEnabled() { // TODO Auto-generated method stub return this.ustatus==0?true:false; } [/code] 我的dao类 数据访问方法如下 SysUserDaoHbnImpl.java [code="java"] @Repository("sysUserDao") public class SysUserDaoHbnImpl implements SysUserDao{ private static final Log log = LogFactory.getLog(SysUserDao.class); private SessionFactory sessionFactory; @Autowired public void setSessionFactory(SessionFactory sessionFactory) { this.sessionFactory = sessionFactory; } @SuppressWarnings("unchecked") @Cacheable(cacheName = "baseCache") public List<SysUser> selectRecordForPage(QueryPara<SysUser> qp) { // TODO Auto-generated method stub //处理分页开始 List<SysUser> result=null; try { Criteria criteria = this.sessionFactory.getCurrentSession().createCriteria(qp.getClazz()); List<Criterion> list=qp.getCriterions(); if (list != null) { if(list.size()>0) { //Set<String> keys = map.keySet(); for (Criterion cri : list) { criteria.add(cri); } } } // 获取根据条件分页查询的总行数 //System.out.println("获取根据条件分页查询的总行数"); int rowCount = ((Number) criteria.setProjection( Projections.rowCount()).uniqueResult()).intValue(); criteria.setProjection(null); qp.setRecordcount(rowCount); qp.setPagecount((qp.getRecordcount()+qp.getPagesize() - 1)/qp.getPagesize()); if(qp.getPageNo()>qp.getPagecount()) { qp.setPageNo(qp.getPagecount()); } if(qp.getPageNo()<1) { qp.setPageNo(1); } List<Order> list2=qp.getOrders(); if (list2 != null) { if(list2.size()>0) { //Set<String> keys = map2.keySet(); for (Order ord : list2) { criteria.addOrder(ord);//(Restrictions.like(key, map2.get(key))); } } } criteria.setFirstResult((qp.getPageNo() - 1) * qp.getPagesize()); criteria.setMaxResults(qp.getPagesize()); result = (List<SysUser>)criteria.list(); } catch (RuntimeException re) { log.error(re.getMessage()); } return result; //处理分页结束 } } [/code] 服务层代码略,负责调用SysUserDaoHbnImpl.java的selectRecordForPage方法 我的控制器 负责调用服务层用户数据分页方法,然后服务层继续调用数据访问层SysUserDaoHbnImpl.java的selectRecordForPage方法 我的控制器UserController.java调用方法如下 [code="java"] @RequestMapping(value={"/List"},method=RequestMethod.GET) public String list( @RequestParam(value="page", defaultValue="1") int page, @RequestParam(value="perPage", defaultValue="30") int perPage, ModelMap modelMap) { QueryPara<SysUser> qp=new QueryPara<SysUser>(); qp.setClazz(SysUser.class); qp.setPagesize(perPage); qp.setPageNo(page); modelMap.put("userlist", this.sysUserService.selectRecordForPage(qp)); modelMap.put("QueryPara", qp); return "UserManager/List"; } [/code] 我的视图userlist.jsp里面的java代码如下 [code="java"] List<SysUser> list=(List<SysUser>)request.getAttribute("userlist"); if(list.size()>0) { Iterator<SysUser> it=list.iterator(); SysUser sysUser=null; while(it.hasNext()) { sysUser=(SysUser)it.next(); //此处抛出异常:java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [SysUser] } [/code] 我运行系统,打开显示用户数据页面,SysUserDaoHbnImpl.java数据分页方法selectRecordForPage我设置断点都没有抛出异常,就在视图页面sysUser=(SysUser)it.next(); 这个地方抛出异常java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [SysUser] 请问高手 这是什么原因,应该如何修改呢,不胜感谢 附上我的测试情况: (一)第一种情况,在原来系统里面SysUser.java没有实现UserDetails(spring security里面的一个接口)接口时, 用户数据显示视图userlist.jsp是显示正常的,可以看到用户数据 (问题是 现在SysUser.java实现接口UserDetails,怎么在视图层sysUser=(SysUser)it.next()就出问题? ) (二) 第二种情况,当我把SysUserDaoHbnImpl.java数据分页方法selectRecordForPage里面的下面代码部分做如下修改的时候 运行正常 [code="java"] //注释下面代码 //int rowCount = ((Number) criteria.setProjection( //Projections.rowCount()).uniqueResult()).intValue(); // criteria.setProjection(null); //手动设置int rowCount值 int rowCount=1;//我用户表目前实际只有一个用户 [/code] 注释掉上面的Projections相关代码后,userlist.jsp页面也是运行正常的
myeclipse连接mysql出现异常
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>查询条件提交页面</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> 请选择查询条件<hr width="100%" size="3"> <form action="find_stu_3.jsp" method="post"> Sex: male<input type="radio" value="m" name="sex" checked="checked" > female<input type="radio" value="f" name="sex" ><br><br> 体重范围:<p>&nbsp;&nbsp;&nbsp;&nbsp; 最小:<input type="text" value="0" name="w1" ><br><br> &nbsp;&nbsp;&nbsp;&nbsp; 最大:<input type="text" value="100" name="w2" ><p> 身高范围:<p>&nbsp;&nbsp;&nbsp;&nbsp; 最小:<input type="text" value="140" name="h1" ><br><br> &nbsp;&nbsp;&nbsp;&nbsp; 最大:<input type="text" value="200" name="h2" ><br><br> <input type="submit" value="提交"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="reset" value="取消"> </p> </form> </body> </html> <%@ page language="text/html" import="java.sql.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>由提交页面获取查询条件并实现查询的页面</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> <center> <% String driverName="com.mysql.jdbc.Driver"; String userName="root"; String userPwd="123456"; String dbName="student"; String url1="jdbc:mysql://localhost:3306/"+dbName; String url2="?user="+userName+"&password="+userPwd; String url3="&useUnicode=true&characterEncoding=UTF-8"; String url=url1+url2+url3; Class.forName(driverName); Connection conn=DriverManager.getConnection(url); request.setCharacterEncoding("UTF-8"); String sex=request.getParameter("sex"); float weight1=Float.parseFloat(request.getParameter("w1")); float weight2=Float.parseFloat(request.getParameter("w2")); float hight1=Float.parseFloat(request.getParameter("h1")); float hight2=Float.parseFloat(request.getParameter("h2")); String sql="select * from stu_info1 where sex=? and weight>=? and weight<=? and hight>=? and hight<=?"; PreparedStatement pstmt=conn.prepareStatement(sql); pstmt.setString(1,sex); pstmt.setFloat(2,weight1); pstmt.setFloat(3,weight2); pstmt.setFloat(4,hight1); pstmt.setFloat(5,hight2); ResultSet rs=pstmt.executeQuery(); rs.last(); %> <table border="2" bgcolor="ccceee" width="650"> <tr bgcolor="CCCCCC" align="center"> <td>记录条数</td><td>id</td><td>name</td> <td>sex</td><td>age</td><td>weight</td><td>height</td> </tr> <%rs.beforeFirst(); while(rs.next()){ %><tr align="center"> <td><%=rs.getRow() %></td> <td><%=rs.getInt("id") %></td> <td><%=rs.getString("name") %></td> <td><%=rs.getString("sex") %></td> <td><%=rs.getInt("age") %></td> <td><%=rs.getFloat("weight") %></td> <td><%=rs.getFloat("hight") %></td> </tr> <%} %> </table> </center> <%if(rs!=null){rs.close();} if(pstmt!=null){pstmt.close();} if(conn!=null){conn.close();} %> </body> </html> description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: /find_stu_3.jsp(1,1) Page directive: invalid language attribute org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:102) org.apache.jasper.compiler.PageInfo.setLanguage(PageInfo.java:374) org.apache.jasper.compiler.Validator$DirectiveVisitor.visit(Validator.java:117) org.apache.jasper.compiler.Node$PageDirective.accept(Node.java:590) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336) org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386) org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392) org.apache.jasper.compiler.Node$Root.accept(Node.java:489) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336) org.apache.jasper.compiler.Validator.validate(Validator.java:1700) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178) org.apache.jasper.compiler.Compiler.compile(Compiler.java:306) org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) org.apache.jasper.compiler.Compiler.compile(Compiler.java:273) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) note The full stack trace of the root cause is available in the Apache Tomcat/6.0.13 logs.
spring security启动异常,求大神来指点下
<div class="iteye-blog-content-contain" style="font-size: 14px;"> <p><span style="color: #ff0000; font-size: 16px;">SSH想加上spring security,搞了几天都没搞出来,哪位大神来指点下</span></p> <p> </p> <p> </p> <p>WEB.XML配置</p> <p> </p> <pre name="code" class="xml">&lt;listener&gt; &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt; &lt;/listener&gt; &lt;context-param&gt; &lt;param-name&gt;contextConfigLocation&lt;/param-name&gt; &lt;param-value&gt;classpath:beans.xml,classpath:application-security.xml&lt;/param-value&gt; &lt;/context-param&gt; &lt;!-- 编码过滤 --&gt; &lt;filter&gt; &lt;filter-name&gt;encodingFilter&lt;/filter-name&gt; &lt;filter-class&gt;org.springframework.web.filter.CharacterEncodingFilter&lt;/filter-class&gt; &lt;init-param&gt; &lt;param-name&gt;encoding&lt;/param-name&gt; &lt;param-value&gt;UTF-8&lt;/param-value&gt; &lt;/init-param&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;encodingFilter&lt;/filter-name&gt; &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; &lt;filter&gt; &lt;filter-name&gt;openSessionInView&lt;/filter-name&gt; &lt;filter-class&gt;org.springframework.orm.hibernate3.support.OpenSessionInViewFilter&lt;/filter-class&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;openSessionInView&lt;/filter-name&gt; &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; &lt;!-- 权限 --&gt; &lt;filter&gt; &lt;filter-name&gt;springSecurityFilterChain&lt;/filter-name&gt; &lt;filter-class&gt; org.springframework.web.filter.DelegatingFilterProxy &lt;/filter-class&gt; &lt;/filter&gt; &lt;filter-mapping&gt; &lt;filter-name&gt;springSecurityFilterChain&lt;/filter-name&gt; &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt;</pre> <p> </p> <p>bean.xml配置</p> <pre name="code" class="xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd "&gt; &lt;context:annotation-config /&gt; &lt;context:component-scan base-package="com.test" /&gt; &lt;bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"&gt; &lt;property name="locations"&gt; &lt;value&gt;classpath:jdbc.properties&lt;/value&gt; &lt;/property&gt; &lt;/bean&gt; &lt;bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource"&gt; &lt;property name="driverClassName" value="${jdbc.driverClassName}" /&gt; &lt;property name="url" value="${jdbc.url}" /&gt; &lt;property name="username" value="${jdbc.username}" /&gt; &lt;property name="password" value="${jdbc.password}" /&gt; &lt;/bean&gt; &lt;bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"&gt; &lt;property name="dataSource" ref="dataSource" /&gt; &lt;property name="packagesToScan"&gt; &lt;list&gt; &lt;value&gt;com.test.model&lt;/value&gt; &lt;/list&gt; &lt;/property&gt; &lt;property name="hibernateProperties"&gt; &lt;props&gt; &lt;prop key="hibernate.dialect"&gt; org.hibernate.dialect.PostgreSQLDialect &lt;/prop&gt; &lt;prop key="connection.provider_class"&gt;org.hibernate.connection.C3P0ConnectionProvider&lt;/prop&gt; &lt;prop key="c3p0.min_size"&gt;7&lt;/prop&gt; &lt;prop key="c3p0.max_size"&gt;42&lt;/prop&gt; &lt;prop key="c3p0.timeout"&gt;1800&lt;/prop&gt; &lt;prop key="c3p0.max_statements"&gt;50&lt;/prop&gt; &lt;prop key="c3p0.idle_test_period"&gt;60&lt;/prop&gt; &lt;prop key="c3p0.acquire_increment"&gt;1&lt;/prop&gt; &lt;prop key="c3p0.validate"&gt;true&lt;/prop&gt; &lt;prop key="hibernate.show_sql"&gt;true&lt;/prop&gt; &lt;prop key="hibernate.format_sql"&gt;false&lt;/prop&gt; &lt;prop key="hibernate.cache.use_second_level_cache"&gt;true&lt;/prop&gt; &lt;prop key="hibernate.cache.use_query_cache"&gt;true&lt;/prop&gt; &lt;prop key="hibernate.cache.provider_class"&gt;org.hibernate.cache.EhCacheProvider&lt;/prop&gt; &lt;/props&gt; &lt;/property&gt; &lt;/bean&gt; &lt;bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"&gt; &lt;property name="sessionFactory" ref="sessionFactory"&gt;&lt;/property&gt; &lt;/bean&gt; &lt;bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"&gt; &lt;property name="sessionFactory" ref="sessionFactory" /&gt; &lt;/bean&gt; &lt;tx:annotation-driven transaction-manager="transactionManager"/&gt; &lt;tx:advice id="txAdvice" transaction-manager="transactionManager"&gt; &lt;tx:attributes&gt; &lt;tx:method name="get*" read-only="true" propagation="REQUIRED"/&gt; &lt;tx:method name="find*" read-only="true" propagation="REQUIRED"/&gt; &lt;tx:method name="*" rollback-for="java.lang.Exception" propagation="REQUIRED"/&gt; &lt;/tx:attributes&gt; &lt;/tx:advice&gt; &lt;aop:config&gt; &lt;aop:pointcut id="bussinessService" expression="execution( * com.test.service..*.*(..))" /&gt; &lt;aop:advisor pointcut-ref="bussinessService" advice-ref="txAdvice" /&gt; &lt;/aop:config&gt; &lt;/beans&gt;</pre> <p> application-security.xml配置</p> <pre name="code" class="xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;b:beans xmlns="http://www.springframework.org/schema/security" xmlns:b="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"&gt; &lt;debug/&gt; &lt;!-- &lt;global-method-security&gt; --&gt; &lt;!-- Element 这个元素用来在你的应用程序中启用基于安全的注解(通过在这个元素中设置响应的属性), --&gt; &lt;!-- 也可以用来声明将要应用在你的实体application context中的安全切点组。 --&gt; &lt;!-- &lt;global-method-security secured-annotations="enabled" jsr250-annotations="enabled"/&gt; --&gt; &lt;!-- protect-pointcut是非常强大的,它让你可以用简单的声明对多个bean的进行安全声明。 参考下面的例子: Java代码 --&gt; &lt;!-- &lt;global-method-security&gt; --&gt; &lt;!-- &lt;protect-pointcut expression="execution(* com.mycompany.*Service.*(..))" access="ROLE_USER"/&gt; --&gt; &lt;!-- &lt;/global-method-security&gt; 这样会保护application context中的符合条件的bean的所有方法 --&gt; &lt;!-- 不要过滤图片等静态资源,其中**代表可以跨越目录,*不可以跨越目录。 --&gt; &lt;!-- &lt;intercept-url pattern="/**/*.jpg" filters="none" /&gt; --&gt; &lt;!-- &lt;intercept-url pattern="/**/*.png" filters="none" /&gt; --&gt; &lt;!-- &lt;intercept-url pattern="/**/*.gif" filters="none" /&gt; --&gt; &lt;!-- &lt;intercept-url pattern="/**/*.css" filters="none" /&gt; --&gt; &lt;!-- &lt;intercept-url pattern="/**/*.js" filters="none" /&gt; --&gt; &lt;!-- 这些请求不用过滤 --&gt; &lt;http pattern="/**/*.js" security="none"/&gt; &lt;http pattern="/**/*.css" security="none"/&gt; &lt;http pattern="/**/*.gif**" security="none"/&gt; &lt;http pattern="/**/*.jpg" security="none"/&gt; &lt;http pattern="/login.jsp" security="none"/&gt; &lt;http use-expressions="true" entry-point-ref="authenticationProcessingFilterEntryPoint" access-denied-page="/a.jsp"&gt; &lt;logout invalidate-session="false" logout-success-url="/login.jsp" logout-url="/j_spring_security_logout"/&gt; &lt;remember-me /&gt; &lt;session-management invalid-session-url="/timeout.jsp"&gt; &lt;concurrency-control max-sessions="1" error-if-maximum-exceeded="true" expired-url="/login.jsp"&gt;&lt;/concurrency-control&gt; &lt;/session-management&gt; &lt;!-- 定制自己的过滤器 --&gt; &lt;custom-filter ref="loginFilter" position="FORM_LOGIN_FILTER" /&gt; &lt;custom-filter ref="securityFilter" before="FILTER_SECURITY_INTERCEPTOR"/&gt; &lt;/http&gt; &lt;!-- 登录验证器 --&gt; &lt;b:bean id="loginFilter" class="com.sjweb.security.MyUsernamePasswordAuthenticationFilter"&gt; &lt;!-- 处理登录 --&gt; &lt;b:property name="filterProcessesUrl" value="/j_spring_security_check"&gt;&lt;/b:property&gt; &lt;b:property name="authenticationSuccessHandler" ref="loginLogAuthenticationSuccessHandler"&gt;&lt;/b:property&gt; &lt;b:property name="authenticationFailureHandler" ref="simpleUrlAuthenticationFailureHandler"&gt;&lt;/b:property&gt; &lt;b:property name="authenticationManager" ref="myAuthenticationManager"&gt;&lt;/b:property&gt; &lt;b:property name="usersService" ref="usersService"&gt;&lt;/b:property&gt; &lt;/b:bean&gt; &lt;b:bean id="loginLogAuthenticationSuccessHandler" class="org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler"&gt; &lt;!-- 登录成功后的页面 --&gt; &lt;b:property name="defaultTargetUrl" value="/index.jsp"&gt;&lt;/b:property&gt; &lt;/b:bean&gt; &lt;b:bean id="simpleUrlAuthenticationFailureHandler" class="org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler"&gt; &lt;b:property name="defaultFailureUrl" value="/login.jsp"&gt;&lt;/b:property&gt; &lt;/b:bean&gt; &lt;!-- 认证过滤器 --&gt; &lt;b:bean id="securityFilter" class="com.sjweb.security.MySecurityFilter"&gt; &lt;!-- 用户拥有的权限 --&gt; &lt;b:property name="authenticationManager" ref="myAuthenticationManager" /&gt; &lt;!-- 用户是否拥有所请求资源的权限 --&gt; &lt;b:property name="accessDecisionManager" ref="myAccessDecisionManager" /&gt; &lt;!-- 资源与权限对应关系 --&gt; &lt;b:property name="securityMetadataSource" ref="mySecurityMetadataSource" /&gt; &lt;/b:bean&gt; &lt;!-- 实现了UserDetailsService的Bean --&gt; &lt;authentication-manager alias="myAuthenticationManager"&gt; &lt;authentication-provider user-service-ref="myUserDetailServiceImpl"&gt; &lt;/authentication-provider&gt; &lt;/authentication-manager&gt; &lt;b:bean id="myAccessDecisionManager" class="com.test.security.MyAccessDecisionManager"&gt;&lt;/b:bean&gt; &lt;b:bean id="mySecurityMetadataSource" class="com.test.security.MySecurityMetadataSource"&gt; &lt;b:constructor-arg name="resourcesService" ref="resourcesService"&gt;&lt;/b:constructor-arg&gt; &lt;/b:bean&gt; &lt;b:bean id="myUserDetailServiceImpl" class="com.test.security.MyUserDetailServiceImpl"&gt; &lt;b:property name="usersService" ref="usersService"&gt;&lt;/b:property&gt; &lt;/b:bean&gt; &lt;b:bean id="authenticationProcessingFilterEntryPoint" class="org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint"&gt; &lt;b:property name="loginFormUrl" value="/login.jsp"&gt;&lt;/b:property&gt; &lt;/b:bean&gt; &lt;/b:beans&gt;</pre> <p> 异常信息</p> <pre name="code" class="java">Hibernate: select this_.resources_id as resources1_1_0_, this_.create_time as create2_1_0_, this_.enable as enable1_0_, this_.enname as enname1_0_, this_.iscore as iscore1_0_, this_.isleaf as isleaf1_0_, this_.isopen as isopen1_0_, this_.memo as memo1_0_, this_.name as name1_0_, this_.orderid as orderid1_0_, this_.parentid as parentid1_0_, this_.resourcetype as resourc12_1_0_, this_.target as target1_0_ from lq_resources this_ 2013-02-02 02:36:16,220 INFO [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@e29820: defining beans [org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.context.annotation.internalPersistenceAnnotationProcessor,baseDAOSupport,resourcesDAOImpl,usersDAOImpl,resourcesService,usersService,org.springframework.beans.factory.config.PropertyPlaceholderConfigurer#0,dataSource,sessionFactory,hibernateTemplate,transactionManager,org.springframework.aop.config.internalAutoProxyCreator,org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0,org.springframework.transaction.interceptor.TransactionInterceptor#0,org.springframework.transaction.config.internalTransactionAdvisor,txAdvice,bussinessService,org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor#0,org.springframework.security.config.debug.SecurityDebugBeanFactoryPostProcessor#0,org.springframework.security.filterChains,org.springframework.security.filterChainProxy,org.springframework.security.web.DefaultSecurityFilterChain#0,org.springframework.security.web.DefaultSecurityFilterChain#1,org.springframework.security.web.DefaultSecurityFilterChain#2,org.springframework.security.web.DefaultSecurityFilterChain#3,org.springframework.security.web.DefaultSecurityFilterChain#4,org.springframework.security.web.PortMapperImpl#0,org.springframework.security.web.PortResolverImpl#0,org.springframework.security.config.authentication.AuthenticationManagerFactoryBean#0,org.springframework.security.authentication.ProviderManager#0,org.springframework.security.web.context.HttpSessionSecurityContextRepository#0,org.springframework.security.core.session.SessionRegistryImpl#0,org.springframework.security.web.authentication.session.ConcurrentSessionControlStrategy#0,org.springframework.security.web.savedrequest.HttpSessionRequestCache#0,org.springframework.security.web.access.expression.DefaultWebSecurityExpressionHandler#0,org.springframework.security.access.vote.AffirmativeBased#0,org.springframework.security.web.access.intercept.FilterSecurityInterceptor#0,org.springframework.security.web.access.DefaultWebInvocationPrivilegeEvaluator#0,org.springframework.security.authentication.AnonymousAuthenticationProvider#0,org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices#0,org.springframework.security.authentication.RememberMeAuthenticationProvider#0,org.springframework.security.userDetailsServiceFactory,org.springframework.security.web.DefaultSecurityFilterChain#5,loginFilter,loginLogAuthenticationSuccessHandler,simpleUrlAuthenticationFailureHandler,securityFilter,org.springframework.security.authentication.dao.DaoAuthenticationProvider#0,org.springframework.security.authentication.DefaultAuthenticationEventPublisher#0,org.springframework.security.authenticationManager,myAccessDecisionManager,mySecurityMetadataSource,myUserDetailServiceImpl,authenticationProcessingFilterEntryPoint,springSecurityFilterChain]; root of factory hierarchy 2013-02-02 02:36:16,220 INFO [org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean] - Closing Hibernate SessionFactory 2013-02-02 02:36:16,220 INFO [org.hibernate.impl.SessionFactoryImpl] - closing 2013-02-02 02:36:16,267 ERROR [org.springframework.web.context.ContextLoader] - Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.filterChains': Cannot resolve reference to bean 'org.springframework.security.web.DefaultSecurityFilterChain#5' while setting bean property 'sourceList' with key [5]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.DefaultSecurityFilterChain#5': Cannot resolve reference to bean 'securityFilter' while setting constructor argument with key [10]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityFilter' defined in class path resource [application-security.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:563) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3934) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4429) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:987) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:909) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:495) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:722) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:583) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.DefaultSecurityFilterChain#5': Cannot resolve reference to bean 'securityFilter' while setting constructor argument with key [10]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityFilter' defined in class path resource [application-security.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153) at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:616) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322) ... 41 more Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityFilter' defined in class path resource [application-security.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322) ... 55 more Caused by: java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.util.Assert.isTrue(Assert.java:65) at org.springframework.security.access.intercept.AbstractSecurityInterceptor.afterPropertiesSet(AbstractSecurityInterceptor.java:128) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417) ... 62 more 2013-2-2 2:36:16 org.apache.catalina.core.StandardContext listenerStart 严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.filterChains': Cannot resolve reference to bean 'org.springframework.security.web.DefaultSecurityFilterChain#5' while setting bean property 'sourceList' with key [5]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.DefaultSecurityFilterChain#5': Cannot resolve reference to bean 'securityFilter' while setting constructor argument with key [10]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityFilter' defined in class path resource [application-security.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:563) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276) at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197) at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3934) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4429) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:987) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:909) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:495) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:722) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:583) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.DefaultSecurityFilterChain#5': Cannot resolve reference to bean 'securityFilter' while setting constructor argument with key [10]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityFilter' defined in class path resource [application-security.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153) at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:616) at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1003) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:907) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322) ... 41 more Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'securityFilter' defined in class path resource [application-security.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322) ... 55 more Caused by: java.lang.IllegalArgumentException: AccessDecisionManager does not support secure object class: class org.springframework.security.web.FilterInvocation at org.springframework.util.Assert.isTrue(Assert.java:65) at org.springframework.security.access.intercept.AbstractSecurityInterceptor.afterPropertiesSet(AbstractSecurityInterceptor.java:128) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417) ... 62 more</pre> <p> </p> </div>
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
Elastic:菜鸟上手指南
您们好,我是Elastic的刘晓国。如果大家想开始学习Elastic的话,那么这里将是你理想的学习园地。在我的博客几乎涵盖了你想学习的许多方面。在这里,我来讲述一下作为一个菜鸟该如何阅读我的这些博客文章。 我们可以按照如下的步骤来学习: 1) Elasticsearch简介:对Elasticsearch做了一个简单的介绍 2) Elasticsearch中的一些重要概念:cluster, n
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、PDF搜索网站推荐 对于大部
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
Java知识体系最强总结(2020版)
更新于2020-01-05 18:08:00 本人从事Java开发已多年,平时有记录问题解决方案和总结知识点的习惯,整理了一些有关Java的知识体系,这不是最终版,会不定期的更新。也算是记录自己在从事编程工作的成长足迹,通过博客可以促进博主与阅读者的共同进步,结交更多志同道合的朋友。特此分享给大家,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。 整理的Ja
计算机专业的书普遍都这么贵,你们都是怎么获取资源的?
介绍几个可以下载编程电子书籍的网站。 1.Github Github上编程书资源很多,你可以根据类型和语言去搜索。推荐几个热门的: free-programming-books-zh_CN:58K 星的GitHub,编程语言、WEB、函数、大数据、操作系统、在线课程、数据库相关书籍应有尽有,共有几百本。 Go语言高级编程:涵盖CGO,Go汇编语言,RPC实现,Protobuf插件实现,Web框架实
卸载 x 雷某度!GitHub 标星 1.5w+,从此我只用这款全能高速下载工具!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个喜欢在网上收集各种资源的蒟蒻… 网上资源眼花缭乱,下载的方式也同样千奇百怪,比如 BT 下载,磁力链接,网盘资源等等等等,下个资源可真不容易,不一样的方式要用不同的下载软件,因此某比较有名的 x 雷和某度网盘成了我经常使用的工具。 作为一个没有钱的穷鬼,某度网盘几十 kb 的下载速度让我
复习一周,京东+百度一面,不小心都拿了Offer
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前言 还记得我上周说的重庆邮电研二的读者么? 、 知道他拿了Offer之后我也很开心,我就想把它的面试经历和面试题分享出来
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前言 很多次小伙伴问到学习方法,我也很想写这样的一篇文章来跟大家讨论下关于学习方法这件事情。 其实学习方法这个事情,我没啥发言权
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了......,这可都是提升你幸福感的高效率生产力工具哦! 走起!...... NO、1 ScreenToGif 屏幕,摄像头和
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦......,嗯,我们导员是所有导员中最帅的一个,真的...... 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强......,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧?
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每
史上最全的IDEA快捷键总结
写在前面: 我是 扬帆向海,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。 这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。 相关文章: Idea 中最常用的10款插件,提高开发效率 Eclipse 最牛逼的 10 组快捷键,提高开发效率
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前前言 为啥今天有个前前言呢? 因为你们的丙丙啊,昨天有牌面了哟,直接被微信官方推荐,知乎推荐,也就仅仅是还行吧(心里乐开花)
一文带你看清 HTTP 所有概念
上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性。我们接着上篇文章没有说完的 HTTP 标头继续来介绍(此篇文章会介绍所有标头的概念,但没有深入底层) HTTP 标头 先来回顾一下 HTTP1.1 标头都有哪几种 HTTP 1.1 的标头主要分为四种,通用标头、实体标头、请求标头、响应标头,现在我们来对这几种标头进行介绍 通用
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
【综合篇】浏览器的工作原理:浏览器幕后揭秘
web(给达达前端加星标,提升前端技能) 了解浏览器是如何工作的,能够让你站在更高的角度去理解前端 浏览器的发展历程的三大路线,第一是应用程序web化,第二是web应用移动化,第三是web操作系统化。是不是有点不直白。 应用程序web化就是随着现在技术的发展,现在越来越多的应用转向了浏览器与服务器,就是B/S架构;web应用移动化,就是在移动设备应用,什么是移动设备呢。 “移动设备:
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 更多有趣分析教程,扫描下方二维码关注vx公号「裸睡的猪」 即可查看! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合...
死磕Lambda表达式(二):Lambda的使用
在哪使用Lambda表达式?怎么样正确的使用Lambda表达式?
史上最牛逼的 Eclipse 快捷键,提高开发效率!
如果你在使用IDEA,请参考博主另外的一篇idea快捷键的博客。
在三线城市工作爽吗?
我是一名程序员,从正值青春年华的 24 岁回到三线城市洛阳工作,至今已经 6 年有余。一不小心又暴露了自己的实际年龄,但老读者都知道,我驻颜有术,上次去看房子,业务员肯定地说:“小哥肯定比我小,我今年还不到 24。”我只好强颜欢笑:“你说得对。” 从我拥有记忆到现在进入而立之年,我觉得,我做过最明智的选择有下面三个: 1)高中三年,和一位女同学保持着算不上朋友的冷淡关系;大学半年,把这位女同学追到...
CSS操作之你不得不知的一些小技巧(一)ヾ(Ő∀Ő๑)ノ太棒了!!
目录 CSS单行/多行文本,超出隐藏并显示省略号 1. CSS单行/多行文本,超出隐藏并显示省略号 方法一:使用CSS属性 单行文本溢出显示省略号 width: 100px; overflow: hidden; text-overflow:ellipsis; //文本溢出显示省略号 white-space: nowrap; //文本不会换...
强烈推荐 10 款珍藏的 Chrome 浏览器插件
Firebug 的年代,我是火狐(Mozilla Firefox)浏览器的死忠;但后来不知道为什么,该插件停止了开发,导致我不得不寻求一个新的网页开发工具。那段时间,不少人开始推荐 Chrome 浏览器,我想那就试试吧,期初我觉得用起来很别扭,毕竟我不是一个“喜新厌旧”的人。但用的次数越来越多,也就习惯了。 Chrome 浏览器有一个好处,就是插件极其丰富,只有你想不到的,没有你找不到的,这恐怕是...
我以为我对数据库索引十分了解,直到我遇到了阿里面试官。
索引的数据结构分析,数据库面试到索引最常见的问题分析,我总结了一下。
Java程序员都需要懂的「反射」
前言 只有光头才能变强。 文本已收录至我的GitHub精选文章,欢迎Star:https://github.com/ZhongFuCheng3y/3y 今天来简单写一下Java的反射。本来没打算写反射这个知识点的,只是不少的读者都问过我:“你的知识点好像缺了反射阿。能不能补一下?” 这周末也有点空了,所以来写写我对反射的简单理解。这篇是入门文章,没有高深的知识点,希望能对新人有帮助。如果...
史上最牛逼的 VSCode 插件,提高开发效率!
这篇文章收集了一些常用的vscode插件,提高开发效率。
相关热词 c# singleton c#中类的默认值是 c#各种进制之间的转换 c# 正则表达式保留汉字 c#后台跨域 c#基础代码大全 c#指定combox选择 c#关系 mono c# 相差毫秒 用c#做一个简易计算器
立即提问