java中如何进行权限管理,不同用户在界面显示的功能也不同。

每个用户的权限不同,超级管理员可以将权限赋予给用户,用户不能操作不具有权限的功能,求大神帮忙

5个回答

一般都会使用一些权限模型的,比如RBAC模型,对于数据库可以设计5张表,分别是用户表,角色表,许可表,用户角色关系表,角色许可关系表

始终离不开,权限、角色、资源

rbac可以解决你的需求

一般都会使用一些权限模型的,比如RBAC模型,

现在新推出了一个权限框架,叫jCasbin(https://github.com/casbin/jcasbin)。jCasbin采用了元模型的设计思想,支持多种经典的访问控制方案,如ACL、RBAC、ABAC,还支持对RESTful API的控制。现在已经支持Spring Boot、JFinal等Web框架了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于java执行Linux系统命令无法获取权限问题
java中调用一段Linux系统命令,但这段命令涉及到root权限,Process类或者Runtime好像都没有办法进行交互,即让用户输入root密码来执行命令。之前有用过Linux下一款"export"程序,可以实现交互式执行命令,但是不能保证在所有机器上运行,也无法动态的获取密码,因为它是要提前把密码写入脚本的。有没有人有个好的解决方案,我是用来Java Swing的GUI程序设计里的 我希望的是,运行过程中,如果用户点击了需要root权限才能执行的操作,那就像桌面一样弹出窗口来获取用户的密码输入。只是不知道这种X11的界面有没有接口可以调用
java web项目初学者刚就业想找个师傅请教一些问题,有人愿意教我么
公司师傅交给我一个项目,做一个web项目,功能如下,好像蛮难的 1、主要功能实现公司产品展示,新版本发布通知,问题及处理方式收集等 2、主要界面显示 a)首页:显示产品大目录(可利用图片方式展示),展示不同的产品 显示产品相关通知信息 显示账号入口 b)首页链接页面说明 产品大目录,可点击查看该对应产品的详细信息; 产品通知,可以点击查看对应条目的详细信息,可以通过更多项进入通知专属页面,该页面提供通知条目目录,关键字查询功能; 账号入口,可以实现账户登录,采用账号/密码方式 3、主要功能说明 a)普通用户登录后功能 显示公司产品的目录信息,根据产品目录可以查看该产品的详细信息,包括介绍,当前版本,最新更新等; 显示各个产品问题收集目录,可参考论坛分类样式,根据产品进入不同的产品讨论区; 可以发布问题,填写问题标题,产品归类,问题描述(可以使用图片),发布成功的问题,自动显示到对应产品归类中 可查询、显示自己发布的问题和解答参与的问题条目 对自己发布的问题,可以进行修改,补充问题描述,关闭问题。 问题关闭后,不能再进行修改 b)产品经理登录后功能 具备全部普通用户功能 具有问题解答功能,即在问题讨论区,可以对提出的问题进行解答 产品通知发布管理功能,可以对产品新的变动进行发布通知,删除自己发布的通知,通知内容包括,标题,产品归类(默认为产品经理对应的产品或无固定产品经理的产品,日常产品),通知内容等 c)系统管理员登陆后功能 公司产品管理功能,产品添加、修改、删除,产品内容包括产品标题、分类归属、产品介绍,产品图片等 产品分类管理,分类添加,修改,删除,分类项包括:分类名,说明等 用户管理,添加、修改,删除,用户信息包括:用户名称,密码,权限,归属产品(产品经理权限时) # 想通过这个项目学点东西,在做的过程中估计会碰到很多问题,想找个师傅咨询一下,有人愿意帮助我么
求大神帮忙写一个基于java的学生学籍管理系统
具体功能有:1)设计入学、管理及查询界面 2)设计学生各学期、学年成绩输入及查询界 面,并打印各项报表 3)根据各年度总成绩,查询、输出学生学籍管理方案(优秀,合格,试读,退学) 4)毕业管理 5)系统维护,如数据安全管理(含系统备份 与恢复),操作员管理,权限设置
Java Web项目部署在云服务器数据库查询结果为空,本地运行正常
我在本地写的Java web项目,在本地使用本机MySQL数据库一切正常, 但是部署在云服务器的Tomcat,使用云服务器的MySQL数据库查询数据库结果却是空的, 服务器的数据表中确实是有数据的,但就是查询不出来,但是可以执行插入操作。 在服务器的命令行界面登录MySQL是可以查询出数据的,但就是用浏览器访问网页查询结果为空 Java web项目 jsp + servlet + java bean + mysql 5.6 服务器操作系统Centos 6.5 64位 Tomcat 8.0 JDK 1.8 数据库操作的用户对该数据库具有所有的权限 百度没有找到相关的问题 求助,O(∩_∩)O谢谢
openSuSE leap15.1 firewall开启端口?
刚刚接触openSuSE系统,现在有个springboot项目搭建在suse系统上,端口号为11011,我想在suse系统上开启该端口外部访问权限 遇到了问题。重点是15.1版本上面开启端口访问权限。 自己在网上也尝试过各种方式方法。其中一种就是通过 yast命令进入图形设置界面,选择Security and Users选项下的firewall,选择 Allowed Services ,在使用 Tab(或Enter)和 ↓ 选择 相应的功能,选择下面的Advanced,需要开放的端口,例如开放 Tcp Ports 8080(转载地址:https://blog.csdn.net/longtenggenssupreme/article/details/80339591) ),如图显示 ![图片说明](https://img-ask.csdn.net/upload/202002/16/1581853147_328350.png) 但是这个是openSuSE的12版本,我们用的是15.1,firewall模块已经修改成下图展示方式: ![图片说明](https://img-ask.csdn.net/upload/202002/16/1581853606_11192.png) 小弟不才,不知道怎么在15.1上面如何开启这个11011端口?还请大家不吝赐教啊。。。
我在读取某个盘的文件的时候遇见加了权限的文件,我得不到它的路径,会报错,我不去try有别的
我在读取某个盘的文件的时候遇见加了权限的文件,我得不到它的路径,会报错,我不去try有别的办法吗,我做的功能咋和我写的界面结合在一起呢
ssm框架中 利用HandlerInterceptor进行权限验证和登录时遇到的问题 望大神指点
在验证登录的时候 功能基本完成了 但是遇到一点bug 后台主页截图:![图片说明](https://img-ask.csdn.net/upload/201707/10/1499668848_863235.png) 1.启动服务器 进入http://localhost:8993/#1 界面如上图 2.我点击了用户管理 执行了control层的 user/queryAllUser请求 这个请求被拦截器拦截了 跳转到了登陆页面 ![图片说明](https://img-ask.csdn.net/upload/201707/10/1499669371_645556.png) 3.我输入数据库已经存在的账号和密码登陆 ![图片说明](https://img-ask.csdn.net/upload/201707/10/1499669477_879668.png) 变成这个样子了 我点击上面的退出(大界面的)![图片说明](https://img-ask.csdn.net/upload/201707/10/1499669694_303837.png) 触发control层方法 session.invalidate() 跳转到login界面![图片说明](https://img-ask.csdn.net/upload/201707/10/1499669830_48955.png) 登陆进去后就是正常的如下界面![图片说明](https://img-ask.csdn.net/upload/201707/10/1499669910_338484.png) 我想要的效果就是登陆后跳转到上图的界面而不是下图这样的![图片说明](https://img-ask.csdn.net/upload/201707/10/1499670028_127863.png) 附上我的代码:
需求管理DOORS如何和java交互,希望有个jar适配器
目前遇到一个项目,客户用了doors(c语言写的)实现需求管理,也使用了我们公司的平台(java语言)实现javaEE <br />现在客户想把doors提供的api让java来调用,我详细的看了api,需要一个中间的语言dxl(类似于c),那么这样工作量就很大,想找一个doors 对java的一个适配器,在网上找了一个家德国的公司 <br />http://www.model-engineers.com/our-products/doors-adapter.html <br /> <br />给他们公司发了邮件,想试用3个月,结果没有回复,不知道什么原因,我用的*@live.com的邮箱不知道他们能不能收到。。。 <br /> <br />如果哪位前辈遇到想用java调用doors的经历,请回复。。在下感激不尽。 <br />我的邮件:madrocket@live.com <br />    或者:madrocket@live.cn <br /> <br />下面是我的一些具体的一些关于doors的资料 <br /><pre name="code" class="java">目前有两款比较成熟的需求管理工具: Telelogic Doors 和 RequisitePro 总结如下: 优点: 1. Doors支持多项目(文件)之间的追踪关系 2. 需求项的修改有历史记录,并且可以回滚到任何一个历史点的内容 3. Doors本身具备变更管理系统,即变更的提交,评审,应用 4. 从而支持用户同时观看所有相互依赖的需求项 5. 支持Word文档的导入,同时支持table,picture和OLE object的导入 6. 当link的一方产生变更时,Doors可以自动产生提示符通知另一方 7. Door权限控制,包括:只读,修改,创建,删除,管理等五种级别 8. Doors提供灵活的方式实现需求异地管理的方式; 9. 支持数据备份和恢复 缺点: 1. Doors与已有产品的集成,支持Clearquest、clearcase、rose,不支持testManager、project2002 2. Doors与word的集成,只是提供了导出符合格式的word文档,不在word中编辑 结论:在产品选型上用doors是毫无疑问的明智 Doors API 通过 IPC(Inter Process Communication). A system of message passing between processes, such as between DOORS and a CASE tool.进行数据的交互 (DXL)DOORS eXtension Language这种语言对DOORS进行 how DXL can be used to link DOORS with external tools. (那么DXL是如何去连接DOORS和其他的工具的呢?) DOORS提供了API DOORS provides application programming interfaces (APIs) for extending capability, customizing, and linking to other tools. The main interface is the DOORS eXtension Language (DXL). DXL provides a comprehensive set of facilities for making links between DOORS and external applications, such as CASE tools or configuration management databases. Links can range from simple file format import or export, through to complex manipulations of externally managed data using interprocess communication (IPC). DOORS---DXL----FILE(WORD) DOORS LINKS----IPC----USER CASE (ROSE) The DXL server can be used by anyone able to understand simple DXL commands 那么DXL作为一个中语言,那儿就需要一个编译器来执行,那就是THE DXL SERVER DXL supports OLE automation DXL支持OLE automation(需要具备vb知识基础) 那么需要清楚OLE automation是什么 COM=ActiveX 一定要区分的话,ActiveX通常指有界面的控件 Automation一般是指实现了IDispatch的COM Automation 好象是OLE,产生的.DLL能以CreateOleObject()方式调用, DOORS can read and write several commonly used file formats, for example, FrameMaker and Rich Text Format (RTF). However, it is impossible to anticipate and support every file format that might be used. Therefore, the facilities DOORS uses for file import and export are available to the user; you access them through DXL. 11 DOORS---DXL----FILE(WORD) DOORS LINKS----IPC----USER CASE (ROSE) 1. Ole automation 所生成的dll文件如何调用 2. 对于中间语言dxl这个语言是一个新的语言(和C语言类似,也需要学习的) 3. 需要一个解释doors 是一个服务器,来解释这个dxl语言(估计和jvm差不多) 4. 需要熟悉doors c api 但是目前是英文,虽然能看懂,但还是有些单词理解不能准确 apiGetIPC extern void *apiGetIPC() #if 0 #endif Returns a pointer to the IPC channel currently being used by the API. apiSetIPC extern int apiSetIPC() #if 0 void *newIPC;#endif Sets the IPC channel for use by the API. Returns 1 if newIPC was set; otherwise, returns 0. Returns 0 if newIPC is null or not connected. </pre> <br /> <br /> <br /><img src="http://www.iteye.com/upload/attachment/66163/8a0bb04a-60bd-3d07-bc65-4dc6fced4412.png" />
牛逼吹大了!!!小白需开发考试问卷系统,请大神指点迷津,救小弟于水火,可否?
背景: 和同事吐槽公司现用的考试问卷系统,效率低,界面不美观,操作繁琐,牛逼就在不知不觉中吹了起来,吹着吹着我就掉进了自己抛的坑里。深坑(夸下海口要在年底前开发好一套自己描述的考试问卷系统),最最尴尬的是我没有软件开发经验,纯属小白。于是乎,我竭尽全力,在百度、谷歌、知乎、简书等网站上搜索整理信息,以便理清思路、着手开干。经过一周多的学习,我感觉更加迷茫和惶恐,各种技术、框架、方案关联关系错综复杂,难以取舍,不知道如何挑选一个合适的组合方案来实现业务需求。故请大神指点迷津,就小弟于水火。 一. 系统需求: 1. 用户验证登录网址,接收答题提醒,连接至答题页面进行答题,能查询自己的历史成绩和个人的其他基础信息。 2. 用户按照权限分组进行管理,任何人都能自主发起在线考卷或者问卷编辑功能,并根据需要发送给不同的分组进行作答,问卷发起者具有数据统计和审阅功能,并导出相关数据。 3. 用户界面友好,交互感强,页面风格炫酷有科技感,能自定义设置不同配色方案。 4. 局域网内用户数量1000人,要系统运行稳定,数据安全可靠。 5. 整体架构具有一定的可扩展性,方便以后增加其他功能。 还有些基础管理功能不知如何描述比如:机构管理、站内搜索、权限管理等等,请见谅。 二. 需要大神指点的问题: 1. 针对需求从比较宏观的角度介绍一下实现方法和逻辑,推荐一套可行的技术解决方案,并说明理由。以便我走出深山,俯瞰昆仑。 2. 指导梳理一下开发逻辑,推荐一个合理的开发流程,以便我安排开发学习的先后顺序。 3. 推荐一组开发工具,以便我事半功倍,提高效率。 4. 其他你觉得小白初级阶段应注意的事项和弯路,以便我按期完成目标。 三、其他: 虽说是吹牛闯出的事,但我也希望能把系统建的完美,同时为自己增加一项新的技能,在普通的工作中增加一点成就感,而不是仅仅为了把坑填好。有劳各路大神指点迷津,带小弟入门。在此谢过。
从本地选择图片显示到界面时出现了这个错误,是权限的问题么?
10-08 16:38:10.565: D/LOGIN(2398): java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/images/media/545 from pid=2398, uid=10044 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
Java Shiro与外部系统单点登陆问题
本地系统是一个OA系统,有自己的权限控制,用Shiro实现的,有自己的登陆界面。现在要接入到外部系统中,通过外部系统的单点登陆直接进入我自己的系统,想问下大家,这个该怎么实现。怎么在自己的系统里面过滤器来拦截外部系统进行登陆。
求各位大神不吝源代码呀
程序要求: 1. 项目名称:基于JSP的公告系统 2. 功能说明: 1) 提供基于数据库的用户认证:只有正确的登录后才发布,编辑,删除公告; 2) 提供用户注册页面,可以注册新的用户; 3) 登录后可以对通过web页面对公告的增、删、查(按公告的ID)、改,公告存储必须包含ID、标题、内容、发布时间、发布人五个字段; 3. 技术要求: 1) 运行环境jdk8+tomcat8+mysql5 2) 开发技术:JSP +Servlet +JavaBean(可使用开源框架) 评分标准: 1. 基本功能60分: 1) 用户认证:10分 2) 用户注册:10分 3) 公告增删查改:40分 2. 界面开发20分 1) 使用CSS技术:10分 2) 使用JavaScript技术:10分 3. 附加分20分,加分项 1) 使用MVC框架 2) 增加新的功能,如支持图片内容、文件上传、公告删除回收站、分页显示、权限过滤(登陆验证)、登录验证码、公告发布审核、MD5加密等。
Android 手持PDA 如何让扫描到的数据,跟随光标,输入到任意EditText
最近在研究Android 手持PDA的扫描系统 从厂家获得到了demo的源代码, 按照厂家的源代码修改完之后。发现扫描到的内容只能输入到固定的文本框内 如果一个界面内有有两个文本框,就只能输入到第一个文本框内。 请问如何能根据光标的位置,输入到不同的文本框内 布局文件 ``` <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="50dp" android:text="Scan Test" android:id="@+id/tv_title" android:textSize="40dp"/> <EditText android:layout_width="match_parent" android:layout_height="50dp" android:layout_below="@+id/tv_title" android:id="@+id/et1"/> <EditText android:layout_width="match_parent" android:layout_height="50dp" android:layout_below="@+id/et1" android:id="@+id/et2"/> <Button android:id="@+id/btnOpen" android:layout_below="@+id/et2" android:text="Scan" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </RelativeLayout> ``` JAVA文件 ``` import android.Manifest; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; import android.os.Build; import android.os.Bundle; import android.text.Editable; import android.text.Selection; import android.text.Spannable; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; import androidx.core.content.ContextCompat; import com.qs.service.ScanService; import com.zebra.sdl.SDLguiActivity; import java.util.ArrayList; import java.util.List; import java.util.Map; public class MainActivity extends AppCompatActivity { private ScanBroadcastReceiver scanBroadcastReceiver; Button btnOpen, btnEdit; public static EditText et_code1; List<Map<String, String>> listData = new ArrayList<Map<String, String>>(); String str2,str1,str; String TAG="数据"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_code1 = (EditText) findViewById(R.id.et1); et_code1.setText(""); btnOpen = (Button) findViewById(R.id.btnOpen); btnOpen.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { //斑马头软解码方式 if(Build.MODEL.contains("mipi")){ SDLguiActivity.doDecode(); }else{ //普通硬解码 ScanService.openScan(); } } }); //斑马头软解码方式 if(Build.MODEL.contains("mipi")){ //软解码为摄像头形式,需要加上权限 if (ContextCompat.checkSelfPermission(MainActivity.this, android.Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.CAMERA}, 1000); } else { //说明已经获取到摄像头权限了 想干嘛干嘛 Intent newIntent = new Intent(MainActivity.this, SDLguiActivity.class); newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startService(newIntent); } }else{ Intent newIntent = new Intent(MainActivity.this, ScanService.class); newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startService(newIntent); } scanBroadcastReceiver = new ScanBroadcastReceiver(); IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction("com.qs.scancode"); this.registerReceiver(scanBroadcastReceiver, intentFilter); } @Override protected void onResume() { System.out.println("onResume" + "open"); Log.v("onResume", "open"); super.onResume(); } @Override protected void onDestroy() { this.unregisterReceiver(scanBroadcastReceiver); super.onDestroy(); } class ScanBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub //text1为扫描信息 String text1 = intent.getExtras().getString("code"); String str = et_code1.getText().toString().trim()+"\n"; et_code1.setText(str + text1); Editable text = et_code1.getText(); Spannable spanText = text; Selection.setSelection(spanText, text.length()); } } } ``` 求大神指点,本人是初学者,麻烦详细一点。
关于用Hibernate往Oracle里存长字符串的问题
今天老师让做一个网上商城的项目,其中里面有关于产品描述的模块,我想把这些描述存到oracle数据库中,可是总是添加失败 请问存较长的字符串有什么限制吗? 我要存入的字符串 "本书赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,在Bruce Eckel的文字亲和力和小而直接的编程示例面前也会化解于无形。从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。从本书获得的各项大奖以及来自世界各地的读者评论中,不难看出这是一本经典之作。本书的作者拥有多年教学经验,对C、C++以及Java语言都有独到、深入的见解,以通俗易懂及小而直接的示例解释了一个个晦涩抽象的概念。本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、Java I/O系统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容,包含了Java语言基础语法以及高级特性,适合各个层次的Java程序员阅读,同时也是高等院校讲授面向对象程序设计语言以及Java语言的绝佳教材和参考书。 " 就这么多字,按理说不算太多啊~~~~ 我想把这些字存进去,应该在怎么解决啊?
请教一个linux的jdk问题
我的情况:RHEL4,自带jdk1.4.2 1,我又安装了jdk1.6,在profile文件里设好环境变量。 此时终端里输java -version版本1.4,而javac -version显示版本1.6,java_home,path,classpath都显示正确。 2,于是我在图形界面的“软件添加和删除”里,删了jdk1.4,重启 此时终端里java命令就“command not found”了,javac命令依旧ok。进到jdk目录的bin目录,java命令依然没用,而名为java的可执行文件就在那儿放着。但在此目录下“./java”却有效。java和javac两个文件属性权限都一样。 3,于是就想把1.6卸了重装,就删了jdk1.6的文件夹。 现在安装1.6时总提示已经安装,不知道如何卸赶紧,用rpm命令卸掉话我找不到原先jdk1.6所在的包,无法卸。 不知道怎么办才能实现重新安装~~~
使用easyui布局的 怎么可以点击按钮 在center打开界面 不发生跳转
使用easyui布局的 怎么可以点击按钮 在center打开界面 不发生跳转 ``` <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>老师信息管理中心</title> <% //权限验证 if(session.getAttribute("currentUser")==null){ System.out.println("滚"); response.sendRedirect("index.jsp"); return; } %> <link rel="stylesheet" type="text/css" href="easyui/themes/default/easyui.css"> <link rel="stylesheet" type="text/css" href=".easyui/themes/icon.css"> <script type="text/javascript" src="easyui/jquery-1.8.0.min.js"></script> <script type="text/javascript" src="easyui/jquery.easyui.min.js"></script> <script type="text/javascript" src="easyui/locale/easyui-lang-zh_CN.js"></script> <script type="text/javascript"> $(function(){ // 数据 var treeData=[{ text:"信息管理", children:[{ text:"学生发布广场", attributes:{ url:"studentPlace.jsp" } },{ text:"老师发布广场", attributes:{ url:"teacherPlace.jsp" } },{ text:"个人信息", attributes:{ url:"mysession.jsp" } },{ text:"我发布的信息", attributes:{ url:"Myself.jsp" } },{ text:"网站信息", attributes:{ url:"webInstruction.jsp" } },{ text:"违规用户信息", attributes:{ url:"manInfoManager2.jsp" } },{ text:"我的沟通", attributes:{ url:"say.jsp" } },{ text:"我的订单", attributes:{ url:"" } }] }]; // 实例化树菜单 $("#tree").tree({ data:treeData, lines:true, onClick:function(node){ if(node.attributes){ openTab(node.text,node.attributes.url); } } }); // 新增Tab function openTab(text,url){ if($("#tabs").tabs('exists',text)){ $("#tabs").tabs('select',text); }else{ var content="<iframe frameborder='0' scrolling='auto' style='width:100%;height:100%' src="+url+"></iframe>"; $("#tabs").tabs('add',{ title:text, closable:true, content:content }); } } }); </script> </head> <body class="easyui-layout"> <div region="north" style="height:120px; background-color:#E0EDEF"> <img src="image/3.jpg"> <input type="button" value="学生发布广场" onclick="javascrtpt:window.location.href='studentPlace.jsp'" target="main"> 当前用户:&nbsp;<font color="red" >${currentUser.userName }</font> <a href="studentPlace.jsp" target="center"> 学生发布广场</a> </div> <div region="center" style="height:1000px;" name="main" title="欢迎使用"> <div class="easyui-tabs" border="false" id="tabs"> <div title="首页"> <div align="center" style="padding-top: 100px;"name="main"><font color="red" size="10">欢迎使用</font></div> </div> </div> </div> <div region="west" style="width:150px;" title="导航菜单" split="true"> <ul id="tree"></ul> </div> <div region="south" style="height:25px;" align="center">版权所有<a href="http://www.baidu.com">www.baidu.com</a></div> </body> </html> ```
jqGrid 返回正确的json数据却无法正常显示
各位好:目前使用jqGrid插件做数据展示,遇到问题 json返回的数据格式是正确的,但是前台界面却显示,服务器端我使用的struts2,为了方便调试,目前json串的拼接先直接接到txt文件中,action直接读取文件内容返回。方便修改测试,等这个问题解决后,改为 动态拼写,上代码: 返回的json: ``` { "page": "1", "total": 2, "records": "13", "rows": [ { "id": "13", "cell": [ "13", "2007-10-06", "1000.00", "0.00", "1000.00" ] } ] } ``` jsp文件: ``` <%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <!DOCTYPE html> <html> <head> <style> </style> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <base href="<%=basePath%>"> <title>管理员用户信息查询</title> <link rel="stylesheet" type="text/css" href="css/admin/jquery-ui.theme.css" /> <link rel="stylesheet" type="text/css" href="css/admin/ui.jqgrid.css" /> <style> html, body { margin: 0; padding: 0; font-size: 75%; } </style> <script src="js/jquery-2.2.3.min.js" type="text/javascript"></script> <script src="http://code.jquery.com/jquery-migrate-1.2.1.js"></script> <script src="js/admin/jquery.jqGrid.min.js" type="text/javascript"></script> <script src="js/admin/grid.locale-en.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready( function() { jQuery("#list4").jqGrid({ url: 'menuMgr/adminUserMgr!query.action' datatype: "JSON", width: 1200, height: 600, colNames:['用户名','邮箱', '权限级别', '标志位','入库时间'], colModel:[ {name:'userName',index:'userName', width:60, sorttype:"int"}, {name:'email',index:'email', width:90, sorttype:"date"}, {name:'perm_level',index:'perm_level', width:80, align:"right",sorttype:"float"}, {name:'flag',index:'flag', width:80, align:"right",sorttype:"float"}, {name:'intime',index:'intime', width:80,align:"right",sorttype:"float"} ], rowNum : 10, pager : '#pager2', multiselect: true, caption: "" }); jQuery("#list4").jqGrid('navGrid', '#pager2', {edit : false,add : false,del : false}); /* var mydata = [ {id:"1",invdate:"2007-10-01",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"2",invdate:"2007-10-02",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"3",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}, {id:"4",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"5",invdate:"2007-10-05",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"6",invdate:"2007-09-06",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"}, {id:"7",invdate:"2007-10-04",name:"test",note:"note",amount:"200.00",tax:"10.00",total:"210.00"}, {id:"8",invdate:"2007-10-03",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}, {id:"9",invdate:"2007-09-01",name:"test3",note:"note3",amount:"400.00",tax:"30.00",total:"430.00"} ]; for(var i=0;i<=mydata.length;i++) jQuery("#list4").jqGrid('addRowData',i+1,mydata[i]); */ }); </script> </head> <body> <br><span style="font-weight:bold;"> 管理菜单 >> 管理员用户管理 >> 管理员用户信息查询 </span> <br> <br> <table id="list4"></table> <div id="pager2"></div> </body> </html> ``` 静态数据是没问题的(local),动态的就是死活不展示 界面现状: ![图片说明](https://img-ask.csdn.net/upload/201606/13/1465795488_218707.jpg) 不过没C币了,希望大家帮帮我 谢谢大家!
蝶变(debian)8 Xfce桌面环境 下 怎么 配置系统?
第一步应该是更新 源 怎么更新呢? su root //先将 账户权限切换为超级管理员(Root) 密码 //此处直接输入密码,不会显示密码的。输完后“回车”下。 。。。。 然后呢? ----------------------------------------------------------------------------------- 1、中文输入法(中州韵)Fcitx框架,去GitHub那下载“fcitx-rime-master.zip” 弹出的提示窗口是说“Ark”打开,这个“Ark”是解压软件吧?那么解压到哪里好呢? 2、无线网络 WiFi用不了了,这估计是驱动没有装,怎么装驱动呢?先把源给更新了。 3、VirtuaIBox虚拟机启动虚拟系统Windows 7 报错 “ 不能为虚拟电脑 JiaGuWen 打开一个新任务. The virtual machine 'JiaGuWen' has terminated unexpectedly during startup with exit code 1 (0x1). 返回 代码:NS_ERROR_FAILURE (0x80004005) 组件:Machine 界面:IMachine {480cf695-2d8d-4256-9c7c-cce4184fa048} ” 请问这是怎么回事? 4、安桌开发 去eclipse官方网站下载 “eclipse-jee-luna-SR2-linux-gtk-x86_64.tar.gz”, 请问怎么安装“eclipse”,不会装“点tar点gz”, 好像是要把压缩包解压出来,等等。。。解压到哪里? 5、Java 去甲骨文中文官方网站下载 “jdk-8u20-linux-x64.tar.gz” 同上 。tar。gz格式的文件,是不是都是要把解压出来的不同文件放到对应的文件内去, 那么规则是什么? 6、有的。tar。gz文件,解压出来就可以直接用的了,想火狐浏览器那样, 所以,在纠结解压后放到哪里呢? 7、更新源,好像不会更新源,新立得软件管理器,挺好用的, 就是有不知道那些源列表(debian 8 的) 找到源网址后,填上网址后,后面的 “/×××× ”,这些怎么写? ![图片说明](https://img-ask.csdn.net/upload/201505/23/1432373689_586289.png)
页面显示不出数据,报For input string: ""错
if判断里的原本是注释掉的//adminInfoService.getAdminInfoFunctions(admininfo.getId()).getFs().size()>0,可是getFs取的值为空,登录进不去,所以先写了true ``` @RequestMapping(value="/login",produces="text/html;charset=UTF-8") @ResponseBody public String login(AdminInfo ai,ModelMap model){ //登录验证 AdminInfo admininfo = adminInfoService.getAdminInfoByCond(ai); if(admininfo!=null&&admininfo.getName()!=null){ System.out.println(admininfo.getName()+":"+admininfo.getFs()); //验证过过后,在判断是否已为该管理员分配功能权限 if(true){//adminInfoService.getAdminInfoFunctions(admininfo.getId()).getFs().size()>0 //验证通过且已分配功能权限,则将admininfo对象存入model中 model.put("admin", admininfo); //以json格式向页面发送成功信息 return "{\"success\":\"true\",\"message\":\"登录成功\"}"; }else{ return "{\"success\":\"false\",\"message\":\"您没有权限\"}"; } }else return "{\"success\":\"true\",\"message\":\"登录失败\"}"; } ``` 显示页面usermanager.jsp的关键代码 ``` <body class="easyui-layout"> <div data-options="region:'noth',border:false" style="height:60px;background:#B3DFDA;padding:10px"> north region </div> <div data-options="region:'west',split:true,title:'功能菜单'" style="width:200px;padding:10px"> <ul id="tt"></ul><!-- 定义树 --> </div> <div data-options="region:'south',border:false" style="height:50px;background:#A9FACD;padding:10px"> south region </div> <div data-options="region:'center',title:'主界面'"> <div id="tabs" data-options="fit:true" class="easyui-tabs" style="width:500px;heigth:250px"> </div> </div> <script type="text/javascript"> //为树指定数据 $("#tt").tree({ url:'admininfo/getTree?adminid=${sessionScope.admin.id}' }); $('#tt').tree({ onclick:function(node){ if("用户列表"==node.text){ if($('#tabs').tabs('exits','用户列表')){ $('#tabs').tabs('select','用户列表'); }else{ $('#tabs').tabs('add',{ title:nodel.text, href:'userlist.jsp', closable:true }); } }else if("管理员列表"==node.text){ if($('#tabs').tabs('exits','管理员列表')){ $('#tabs').tabs('select','管理员列表'); }else{ $('#tabs').tabs('add',{ title:nodel.text, href:'adminlist.jsp', closable:true }); } }else if("退出系统"==nodel.text){ $ajax({ url:'admininfo/loginout', sucess:function(data){ window.loction.href="admin_login.jsp"; } }) } } }); </script> ``` 这是getAdminInfoByCond方法的映射文件 ``` <select id="getAdminInfoByCond" parameterType="com.digital.pojo.AdminInfo" resultType="com.digital.pojo.AdminInfo"> select * from admin_info where name=#{name} and pwd=#{pwd} </select> ``` 这是报错: ![图片说明](https://img-ask.csdn.net/upload/201904/18/1555576897_543245.png) getAdminInfoFunctions的映射文件: ``` <select id="getAdminInfoFunctions" parameterType="int" resultMap="getAdminInfoFunctionsMap"> select ai.id,ai.name,f.id fuid,f.name fname,f.parentid fpid,f.isleaf fisleaf,f.nodeorder fno from admin_info ai left join powers p on ai.id=p.aid join functions f on p.fid=f.id where ai.id=#{id} ORDER BY fpid </select> <resultMap type="com.digital.pojo.AdminInfo" id="getAdminInfoFunctionsMap"> <id property="id" column="id"/> <result property="name" column="name"/> <collection property="fs" ofType="com.digital.pojo.Functions"> <id property="id" column="fuid"/> <result property="name" column="fname"/> <result property="parentid" column="fpid"/> <result property="isleaf" column="fisleaf"/> </collection> </resultMap> ```
在中国程序员是青春饭吗?
今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...
《MySQL 性能优化》之理解 MySQL 体系结构
本文介绍 MySQL 的体系结构,包括物理结构、逻辑结构以及插件式存储引擎。
【资源】一个C/C++开发工程师的学习路线(已经无路可退,唯有逆风飞翔)【内附资源页】
声明: 1)该文章整理自网上的大牛和专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与增删。还望大家多多指点。大家都共享一点点,一起为祖国科研的推进...
程序员请照顾好自己,周末病魔差点一套带走我。
程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。
20道你必须要背会的微服务面试题,面试一定会被问到
写在前面: 在学习springcloud之前大家一定要先了解下,常见的面试题有那块,然后我们带着问题去学习这个微服务技术,那么就会更加理解springcloud技术。如果你已经学了springcloud,那么在准备面试的时候,一定要看看看这些面试题。 文章目录1、什么是微服务?2、微服务之间是如何通讯的?3、springcloud 与dubbo有哪些区别?4、请谈谈对SpringBoot 和S...
达摩院十大科技趋势发布:2020 非同小可!
【CSDN编者按】1月2日,阿里巴巴发布《达摩院2020十大科技趋势》,十大科技趋势分别是:人工智能从感知智能向认知智能演进;计算存储一体化突破AI算力瓶颈;工业互联网的超融合;机器间大规模协作成为可能;模块化降低芯片设计门槛;规模化生产级区块链应用将走入大众;量子计算进入攻坚期;新材料推动半导体器件革新;保护数据隐私的AI技术将加速落地;云成为IT技术创新的中心 。 新的画卷,正在徐徐展开。...
轻松搭建基于 SpringBoot + Vue 的 Web 商城应用
首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计算准备计算资源,并以弹性伸缩的方式运行用户代码,而用户只需根据实际代码运行所消耗的资源进行付费。Fun: Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算、API ...
Python+OpenCV实时图像处理
目录 1、导入库文件 2、设计GUI 3、调用摄像头 4、实时图像处理 4.1、阈值二值化 4.2、边缘检测 4.3、轮廓检测 4.4、高斯滤波 4.5、色彩转换 4.6、调节对比度 5、退出系统 初学OpenCV图像处理的小伙伴肯定对什么高斯函数、滤波处理、阈值二值化等特性非常头疼,这里给各位分享一个小项目,可通过摄像头实时动态查看各类图像处理的特点,也可对各位调参、测试...
2020年一线城市程序员工资大调查
人才需求 一线城市共发布岗位38115个,招聘120827人。 其中 beijing 22805 guangzhou 25081 shanghai 39614 shenzhen 33327 工资分布 2020年中国一线城市程序员的平均工资为16285元,工资中位数为14583元,其中95%的人的工资位于5000到20000元之间。 和往年数据比较: yea...
为什么猝死的都是程序员,基本上不见产品经理猝死呢?
相信大家时不时听到程序员猝死的消息,但是基本上听不到产品经理猝死的消息,这是为什么呢? 我们先百度搜一下:程序员猝死,出现将近700多万条搜索结果: 搜索一下:产品经理猝死,只有400万条的搜索结果,从搜索结果数量上来看,程序员猝死的搜索结果就比产品经理猝死的搜索结果高了一倍,而且从下图可以看到,首页里面的五条搜索结果,其实只有两条才是符合条件。 所以程序员猝死的概率真的比产品经理大,并不是错...
害怕面试被问HashMap?这一篇就搞定了!
声明:本文以jdk1.8为主! 搞定HashMap 作为一个Java从业者,面试的时候肯定会被问到过HashMap,因为对于HashMap来说,可以说是Java集合中的精髓了,如果你觉得自己对它掌握的还不够好,我想今天这篇文章会非常适合你,至少,看了今天这篇文章,以后不怕面试被问HashMap了 其实在我学习HashMap的过程中,我个人觉得HashMap还是挺复杂的,如果真的想把它搞得明明白...
毕业5年,我问遍了身边的大佬,总结了他们的学习方法
我问了身边10个大佬,总结了他们的学习方法,原来成功都是有迹可循的。
python爬取百部电影数据,我分析出了一个残酷的真相
2019年就这么匆匆过去了,就在前几天国家电影局发布了2019年中国电影市场数据,数据显示去年总票房为642.66亿元,同比增长5.4%;国产电影总票房411.75亿元,同比增长8.65%,市场占比 64.07%;城市院线观影人次17.27亿,同比增长0.64%。 看上去似乎是一片大好对不对?不过作为一名严谨求实的数据分析师,我从官方数据中看出了一点端倪:国产票房增幅都已经高达8.65%了,为什...
推荐10个堪称神器的学习网站
每天都会收到很多读者的私信,问我:“二哥,有什么推荐的学习网站吗?最近很浮躁,手头的一些网站都看烦了,想看看二哥这里有什么新鲜货。” 今天一早做了个恶梦,梦到被老板辞退了。虽然说在我们公司,只有我辞退老板的份,没有老板辞退我这一说,但是还是被吓得 4 点多都起来了。(主要是因为我掌握着公司所有的核心源码,哈哈哈) 既然 4 点多起来,就得好好利用起来。于是我就挑选了 10 个堪称神器的学习网站,推...
这些软件太强了,Windows必装!尤其程序员!
Windows可谓是大多数人的生产力工具,集娱乐办公于一体,虽然在程序员这个群体中都说苹果是信仰,但是大部分不都是从Windows过来的,而且现在依然有很多的程序员用Windows。 所以,今天我就把我私藏的Windows必装的软件分享给大家,如果有一个你没有用过甚至没有听过,那你就赚了????,这可都是提升你幸福感的高效率生产力工具哦! 走起!???? NO、1 ScreenToGif 屏幕,摄像头和白板...
阿里面试,面试官没想到一个ArrayList,我都能跟他扯半小时
我是真的没想到,面试官会这样问我ArrayList。
曾经优秀的人,怎么就突然不优秀了。
职场上有很多辛酸事,很多合伙人出局的故事,很多技术骨干被裁员的故事。说来模板都类似,曾经是名校毕业,曾经是优秀员工,曾经被领导表扬,曾经业绩突出,然而突然有一天,因为种种原因,被裁员了,...
大学四年因为知道了这32个网站,我成了别人眼中的大神!
依稀记得,毕业那天,我们导员发给我毕业证的时候对我说“你可是咱们系的风云人物啊”,哎呀,别提当时多开心啦????,嗯,我们导员是所有导员中最帅的一个,真的???? 不过,导员说的是实话,很多人都叫我大神的,为啥,因为我知道这32个网站啊,你说强不强????,这次是绝对的干货,看好啦,走起来! PS:每个网站都是学计算机混互联网必须知道的,真的牛杯,我就不过多介绍了,大家自行探索,觉得没用的,尽管留言吐槽吧???? 社...
良心推荐,我珍藏的一些Chrome插件
上次搬家的时候,发了一个朋友圈,附带的照片中不小心暴露了自己的 Chrome 浏览器插件之多,于是就有小伙伴评论说分享一下我觉得还不错的浏览器插件。 我下面就把我日常工作和学习中经常用到的一些 Chrome 浏览器插件分享给大家,随便一个都能提高你的“生活品质”和工作效率。 Markdown Here Markdown Here 可以让你更愉快的写邮件,由于支持 Markdown 直接转电子邮...
看完这篇HTTP,跟面试官扯皮就没问题了
我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟、醍醐灌顶的感觉。 最初在有网络之前,我们的电脑都是单机的,单机系统是孤立的,我还记得 05 年前那会儿家里有个电脑,想打电脑游戏还得两个人在一个电脑上玩儿,及其不方便。我就想为什么家里人不让上网,我的同学 xxx 家里有网,每...
2020 年,大火的 Python 和 JavaScript 是否会被取而代之?
Python 和 JavaScript 是目前最火的两大编程语言,但是2020 年,什么编程语言将会取而代之呢? 作者 |Richard Kenneth Eng 译者 |明明如月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 以下为译文: Python 和 JavaScript 是目前最火的两大编程语言。然而,他们不可能永远屹立不倒。最终,必将像其他编程语言一...
史上最全的IDEA快捷键总结
现在Idea成了主流开发工具,这篇博客对其使用的快捷键做了总结,希望对大家的开发工作有所帮助。
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
谁是华为扫地僧?
是的,华为也有扫地僧!2020年2月11-12日,“养在深闺人不知”的华为2012实验室扫地僧们,将在华为开发者大会2020(Cloud)上,和大家见面。到时,你可以和扫地僧们,吃一个洋...
AI 没让人类失业,搞 AI 的人先失业了
最近和几个 AI 领域的大佬闲聊 根据他们讲的消息和段子 改编出下面这个故事 如有雷同 都是巧合 1. 老王创业失败,被限制高消费 “这里写我跑路的消息实在太夸张了。” 王葱葱哼笑一下,把消息分享给群里。 阿杰也看了消息,笑了笑。在座几位也都笑了。 王葱葱是个有名的人物,21岁那年以全额奖学金进入 KMU 攻读人工智能博士,累计发表论文 40 余篇,个人技术博客更是成为深度学习领域内风向标。 ...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
神级宝库!GitHub 标星 1.2w+,Chrome 最天秀的插件都在这里啦!
作者 | Rocky0429 来源 | Python空间 大家好,我是 Rocky0429,一个沉迷 Chrome 不能自拔的蒟蒻… 作为一个在远古时代用过什么 IE、360、猎豹等浏览器的资深器哥,当我第一次了解 Chrome 的时候,就被它的美貌给吸引住了… 就在我用了一段时间之后,我坚决的卸载了电脑上其它碍眼的浏览器,并觉得在之前的搬砖生涯中,我不配当哥,我只配是个沙雕… ...
作为一名大学生,如何在B站上快乐的学习?
B站是个宝,谁用谁知道???? 作为一名大学生,你必须掌握的一项能力就是自学能力,很多看起来很牛X的人,你可以了解下,人家私底下一定是花大量的时间自学的,你可能会说,我也想学习啊,可是嘞,该学习啥嘞,不怕告诉你,互联网时代,最不缺的就是学习资源,最宝贵的是啥? 你可能会说是时间,不,不是时间,而是你的注意力,懂了吧! 那么,你说学习资源多,我咋不知道,那今天我就告诉你一个你必须知道的学习的地方,人称...
那些年,我们信了课本里的那些鬼话
教材永远都是有错误的,从小学到大学,我们不断的学习了很多错误知识。 斑羚飞渡 在我们学习的很多小学课文里,有很多是错误文章,或者说是假课文。像《斑羚飞渡》: 随着镰刀头羊的那声吼叫,整个斑羚群迅速分成两拨,老年斑羚为一拨,年轻斑羚为一拨。 就在这时,我看见,从那拨老斑羚里走出一只公斑羚来。公斑羚朝那拨年轻斑羚示意性地咩了一声,一只半大的斑羚应声走了出来。一老一少走到伤心崖,后退了几步,突...
张朝阳回应迟到 1 分钟罚 500:资本家就得剥削员工
loonggg读完需要2分钟速读仅需 1 分钟大家我,我是你们的校长。前几天,搜狐的董事局主席兼 CEO 张朝阳和搜狐都上热搜了。原因很简单,就是搜狐出了“考勤新规”。一封搜狐对员工发布...
立即提问