精华内容
下载资源
问答
  • Oracle管理Oracle项目 信息采集系统 模块功能: 1.录入员工信息,并写入到数据库 注意事项: A.使用存储过程实现 B.录入数据项为员工姓名,员工...将数据写入到Scott用户下的EMP表中 F:动态SQL语句采用ExecuteIMMEDIATE执行
  • 所以写sql时where条件那块的数据创建人是一个动态集合,而这个动态的集合该怎么写呢?因此写了个传入父id查询所有子id的mysql函数,同样适用于,菜单查询,组织机构查询等等上下级关系的递归查询。 DELIMITER $$ ...

    今天做一个页面查询时有个需求是:不同人查看当前页面的数据量不一样,数据量的规则是,上级能看到所有下级员工的数据,也就是底层员工只能看到自己的数据。所以写sql时where条件那块的数据创建人是一个动态集合,而这个动态的集合该怎么写呢?因此写了个传入父id查询所有子id的mysql函数,同样适用于,菜单查询,组织机构查询等等上下级关系的递归查询。

    DELIMITER $$
    
    USE `loanmarket`$$
    
    DROP FUNCTION IF EXISTS `getAllChildUserId`$$
    
    CREATE DEFINER=`root`@`%` FUNCTION `getAllChildUserId`(parentId INT) RETURNS VARCHAR(4000) CHARSET utf8
    BEGIN
    DECLARE oTemp VARCHAR(4000);
    DECLARE oTempChild VARCHAR(4000);
    SET oTemp = '$';
    SET oTempChild = CAST(parentId AS CHAR);
    WHILE oTempChild IS NOT NULL
    DO
    SET oTemp = CONCAT(oTemp,',',oTempChild);
    SELECT GROUP_CONCAT(id) INTO oTempChild FROM ccq_user WHERE FIND_IN_SET(parent_id,oTempChild) > 0;
    END WHILE;
    RETURN oTemp;
    END$$
    
    DELIMITER ;
    这个函数返回的是一个字符串的结果,例如"$,1,2,3",第一个元素为什么是"$",因为拼接定义时候写死的,当然你也可以不写,
    现在我们说一下mysql的另一个函数:find_in_set(str,strlist)
    简单的说一下,就是获得str在strlist中的位置,找不到返回0,下标从1开始
    比如:select find_in_set(2,'1,2,3');返回的结果就是2
    加入我门把这个函数和我们自定义的函数结合起来就能满足那个查询要求了。
    select * from user where find_in_set(id,getAllChildUserId(1));
    这样得到的结果就是id为1的员工下所有的下属员工
    展开全文
  • form动态传值的问题?

    2009-06-04 11:11:00
    怎么form呢?我在csdn上发的帖子是这样的。我用hibernate struts的框架 现在我由部门表生成了一个树,动态生成的 现在我想把他插入到数据库。 树是 部门一 部门二 员工一 员工员工二 员工四 的样式 我...

    这几天遇到一个问题
    就是我的输入jsp页面不稳定,是动态的。
    我怎么来写form呢?
    我在csdn上发的帖子是这样的。

    我用hibernate struts的框架

    现在我由部门表生成了一个树,动态生成的

    现在我想把他插入到数据库。

    树是 部门一        部门二
           员工一       员工三
           员工二       员工四

    的样式

    我产生树的部分代码如下
    <form name="educateForm" method="post" action="modifyeducate.do?action=addeducate" onSubmit="return educateValidate();">

      <%
    List emplist=ed.listEmployee("select distinct e.department from Employees e");
    int ID_superType=0;
    String superType="";
    int m=1;
    request.setAttribute("emplist",emplist);
    Iterator it = emplist.iterator();
    while(it.hasNext()){

    我的动态树的父节点的名字就叫  
    <input type="checkbox" name=" <%=superType%>" value=" <%=superType%>" οnclick="checkAll(this, ' <%=superType%>')">

    子节点的名字我也叫 <%=superType%>不过值我就修改为了 subid--就是通过supertype查到的子员工的id

    因为我的superType是从数据库里面得到的,不确定,动态。
    相当与我在输入的时候输入了一个二维的数组

    哪么我的form怎么写?才能传递导action?
    还有个问题,就是我在输入页面中加入了 <form>标签后就无法使用checkAll(this, ' <%=superType%>')这个javascript
    去掉了标签就可以了。。。。为什么?但是调用其他的javascript就很正常。。。。

    我非常想写出这个form,打死我也不绕开。。。。

     

     

    20080604

    几天终于有点时间。

    但是我的论文还没有写完

    现在我已经想好了法子了

    动态传值。。。。这个问题我在网上查了好久也没有结果。

     

    所以我放弃了

    换了个法子

    用javascript来把Dtree树所产生的选择结果 组成一个字符串,这个我有代码
    再用javascript来把这个字符串给赋值给一个type=hidden的input,这样久可以传递给form了。

    再在action里面把这个字符串分解。生成课程类,员工类。

    再进行持久化

     

    嘿嘿,方法是好

    但是现在的问题,我做dtree树的时候发现需要改动我以前的table

    我以前的员工和部门都在一个table里面

    现在要分开来。

     

    前几天遇到了个问题,tomcat无法自动编译。

    搞的我把系统给还原了几次都不可以,知道重新建立平台。

    还是不新。

    而且修改后的系统。

    错误一大把。

    我现在是没有办法了。。。。。。。

    郁闷中。

     

     

     

     

    展开全文
  • 首次写关于技术方面的文章,一时竟不知道该怎么写。不过正好,我做的项目里有一个要根据员工的工资方案个数来显示员工的工资明细。于是就把这个动态生成DataGrid的方法贴了出来。随便写的,写的不好,仅供大家参考。...
            首次写关于技术方面的文章,一时竟不知道该怎么写。不过正好,我做的项目里有一个要根据员工的工资方案个数来显示员工的工资明细。于是就把这个动态生成DataGrid的方法贴了出来。随便写的,写的不好,仅供大家参考。(有不足的地方,大家尽管提哦!)
     1ContractedBlock.gifExpandedBlockStart.gif        CreateDataGrid()方法,动态生成多个DataGrid#region CreateDataGrid()方法,动态生成多个DataGrid
     2InBlock.gif        //faCount是方案个数,也就是要动态生成DataGrid的个数
     3InBlock.gif        private void CreateDataGrid(string[] faName, int faCount, string ny)
     4ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{
     5InBlock.gif            ClassLib.DtaGzcx data = new CPHrms.ClassLib.DtaGzcx();//这个是用来获取数据源的,先不用管它
     6InBlock.gif            float yfgz = 0;
     7InBlock.gif            float sfgz = 0;
     8InBlock.gif            for(int i=0; i<faCount;i++)
     9ExpandedSubBlockStart.gifContractedSubBlock.gif            dot.gif{
    10InBlock.gif                Label labFA = new Label();
    11InBlock.gif                labFA.Text  = faName[i].ToString();
    12InBlock.gif                Panel pl = new Panel();
    13InBlock.gif                Panel plNull = new Panel();
    14InBlock.gif                plNull.Height = 20;
    15InBlock.gif                DataSet[] dsGzxx = new DataSet[10];
    16InBlock.gif                dsGzxx[i] = data.SelectEmployeeGZXX_1(faName[i].Trim(),Session["ZGDM"].ToString(),ny,Session["ConStr"].ToString());
    17InBlock.gif                DataGrid[] dg = new DataGrid[faCount];//这个地方好象不用数组也可以
    18InBlock.gif                dg[i] = new DataGrid();
    19InBlock.gif                dg[i].AutoGenerateColumns = true;
    20InBlock.gif                dg[i].ShowHeader = true;
    21InBlock.gif                dg[i].HeaderStyle.CssClass = "HeadStyle";  //HeadStyle 是在CSS里写的
    22InBlock.gif                dg[i].AlternatingItemStyle.CssClass = "AlternatingItemStyle";
    23InBlock.gif                dg[i].ItemStyle.CssClass = "ItemStyle";
    24InBlock.gif                dg[i].Width = 900;
    25InBlock.gif                dg[i].DataSource = dsGzxx[i].Tables[0];
    26InBlock.gif                dg[i].DataBind();
    27InBlock.gif                pl.Controls.Add(labFA);
    28InBlock.gif                pl.CssClass = "panel";
    29InBlock.gif                byDG.Controls.Add(pl);      //把DataGrid的标题添加到单元格里    
    30InBlock.gif                byDG.Controls.Add(dg[i]);   //紧接着就是DataGrid
    31InBlock.gif                byDG.Controls.Add(plNull);  //然后再添加一个空Panel以便把两个DataGrid分开显示
    32InBlock.gif                //以下是获得多个DataGrid相同列的数据总和并显示
    33InBlock.gif                yfgz = yfgz + Convert.ToSingle(dsGzxx[i].Tables[1].Rows[0][0].ToString());
    34InBlock.gif                sfgz = sfgz + Convert.ToSingle(dsGzxx[i].Tables[1].Rows[0][1].ToString());
    35InBlock.gif                this.lblCountYFGZ.Text = Convert.ToString(yfgz);
    36InBlock.gif                this.lblCountSFGZ.Text = Convert.ToString(sfgz);
    37InBlock.gif                this.lblName.Text = dsGzxx[i].Tables[0].Rows[0]["姓名"].ToString();
    38ExpandedSubBlockEnd.gif            }

    39ExpandedSubBlockEnd.gif        }

    40ExpandedBlockEnd.gif        #endregion

    转载于:https://www.cnblogs.com/GraceLee/archive/2006/11/07/553135.html

    展开全文
  • 但是我不知道怎么写了 ``` public class Demo0<T> { public static void main(String[] args) throws Exception { List<Emp> emps = new ArrayList(); //excel表 Workbook wb = new XSSFWorkbook("d:/员工...
  • 趣谈AOP-静态代理原理

    2020-07-23 18:28:54
    概念就不了,直接三种代理模式的实现方式: 静态代理 在程序运行前,代理类。class文件就已经生成了。是比较固定的实现,相对于动态生成代理来说这就是所谓的静态代理吧。我按自己的理解说的。 我们都知道,...

    概念就不写了,直接写三种代理模式的实现方式:

    静态代理

    在程序运行前,代理类。class文件就已经生成了。是比较固定的实现,相对于动态生成代理来说这就是所谓的静态代理吧。我按自己的理解说的。

    我们都知道,被静态代理的对象必须要实现一个接口,举个栗子。有些公司太严格,不许员工访问一些娱乐网站。怎么实现?当然是加权限,加这些娱乐网站的黑名单。就比如我在鹅厂,谁敢访问个支付宝试试。然后鹅厂就要给zhifubao加个网络连接的黑名单。我们简单看看用静态代理怎么实现。

    首先,我们要定义一个上网的接口,让上网的人都访问这个接口:

    public interface Internet {
        void connectTo(String hostName) throws Exception;
    }
    

    然后我们有个真实上网的对象去实现上网接口里规定的连接功能,当然就是被管理的对象咯。

    public class RealInternet implements Internet {
        @Override
        public void connectTo(String hostName) throws Exception {
            System.out.println("小姐姐要访问 :" + hostName);
        }
    
    }

    那么被代理对象有了,我们怎么去实现对上网的管控呢?

    首先,代理对象也要实现上网接口,其次,我们要让每个要上网的同学都必须把对象给我,当然此对象非彼对象哈。我要好好看看你到底有没有访问zhifubao,如果有不好意思,打屁股。

    我们这样实现:

    public class ProxyInternet implements Internet {
        /**
         * 不好意思,哥一夫当关
         */
        private Internet internet;
    
        /**
         * 来了啊,小姐姐
         *
         * @param internet 小姐姐本尊
         */
        public ProxyInternet(Internet internet) {
            this.internet = internet;
        }
    
        /**
         * 黑名单
         */
        private static List<String> bannedSites = new ArrayList<>();
    
        static {
            bannedSites.add("www.alibaba.com");
            bannedSites.add("www.alimama.com");
            bannedSites.add("www.alijiujiu.com");
            bannedSites.add("www.dingding.com");
            bannedSites.add("www.zhifubao.com");
        }
    
        /**
         * 这里是你做错事的惩罚
         *
         * @param hostName 小姐姐访问的网站
         */
        @Override
        public void connectTo(String hostName) throws Exception {
            if (bannedSites.contains(hostName)) {
                throw new Exception("访问" + hostName + "被我打了屁股!");
            }
            //绿色通道
            internet.connectTo(hostName);
        }
    }
    

    然后小伙伴不听劝告悄悄上网了,还访问了阿里mama

    public class Client {
        public static void main(String[] args) {
            Internet internet = new ProxyInternet(new RealInternet());
            try {
                internet.connectTo("www.alimama.com");
            } catch (Exception e) {
                System.out.println("然后,小姐姐"+e.getMessage());
            }
        }
    }
    

    然后事情的结局是这样的:

    当然也有听话的小伙伴

    我们还可以用工厂模式来完全隐藏真实上网对象的逻辑实现:

    public class Factory {
        public static Object newInstance(String name) {
            return new ProxyInternet(new RealInternet(name));
        }
    }

     

    public class RealInternet implements Internet {
        private String name;
    
        public RealInternet(String name) {
            this.name = name;
        }
    
        @Override
        public void connectTo(String hostName) throws Exception {
            System.out.println("小姐姐" +name+"要访问 :" + hostName);
        }
    
    }

    然后

    public class Client {
        public static void main(String[] args) {
            Internet internet = (Internet) Factory.newInstance("小月亮");
            try {
                internet.connectTo("www.qq.com");
                System.out.println("小姐姐很乖,很听话!");
            } catch (Exception e) {
                System.out.println("然后,小姐姐"+e.getMessage());
            }
        }
    }

    我们看到Client里面没有任何 RealInternet 的信息,然后打印:

    小姐姐小月亮要访问 :www.qq.com
    小姐姐很乖,很听话!

     

    总结

    下面我们总结下优缺点:

    优点

    对被代理对象不做任何修改,甚至都看不到被代理对象的实现。只需要被代理对象交给代理对象代理就可以。我们称之为解耦。

    缺点

    代理类和被代理类都需要实现同一个接口,Override相同的方法,这样无形中增加了代码的冗余度

    我们知道,接口中的方法实现类是必须要实现的,所以一旦我们增加或者修改接口中的方法的时候,实现类中的方法也要跟着修改。这也就增加了维护的难度

    例子中ProxyInternet只能服务于Internet类型的对象。如果我们增加一种别的类型的对象,它就没办法代理了。要实现代理就必须对每一种对象都生成代理类才可以。所以如果需要代理的种类很多很多,静态代理就无法胜任了。

    展开全文
  • 最近在做人事管理系统的一个签到功能,首先是把部门当做参数,把参数用Ajax发送到数据库进行查询,然后以表格形式动态生成员工信息到返回页面的Div里,表格最后的一列是签到按钮,这时我想用JQuery继续获取被点击的...
  • 我能怎么? 实在不好拒绝。。。。。。 准备阶段 需要1张excel表格,记录了每个员工的必要信息, openpyxl模块可以读取excel 需要1个《复工证明_模板》.docx, 可以用python-docx来读写word 复工模板是一个模板,里边...
  • 最新Java面试宝典pdf版

    热门讨论 2011-08-31 11:29:22
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • Java面试宝典2010版

    2011-06-27 09:48:27
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 19、Jdo是什么? 20、什么是spring的IOC AOP 21、STRUTS的工作流程! 22、spring 与EJB的区别!! 八. 软件工程与设计...
  • Java面试宝典-经典

    2015-03-28 21:44:36
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • Java面试宝典2012版

    2012-12-03 21:57:42
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 ...
  • java面试宝典2012

    2012-12-16 20:43:41
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 137 19、Jdo是什么? 137 20、什么是spring的IOC AOP 137 21、STRUTS的工作流程! 137 22、spring 与EJB的区别!! 137 八. ...
  • 给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • Java面试笔试资料大全

    热门讨论 2011-07-22 14:33:56
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • Java面试宝典2012新版

    2012-06-26 19:20:00
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • JAVA面试宝典2010

    2011-12-20 16:13:24
    给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • 给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、spring 与EJB的区别!! 126 八. ...
  • 英特尔面试专项准备

    2020-12-09 13:46:46
    </li><li>关于平衡二叉树的平衡方式和堆排序是怎么排序的,时间和空间复杂度</li><li>列举线程函数库</li><li>线程同步</li><li> <p>fork &pthread_create </li><li> C语言编程 </li><li> <p>const </li>...
  • asp.net知识库

    2015-06-18 08:45:45
    忽略大小Replace效率瓶颈IndexOf 随机排列算法 理解C#中的委托[翻译] 利用委托机制处理.NET中的异常 与正则表达式相关的几个小工具 你真的了解.NET中的String吗? .NET中的方法及其调用(一) 如何判断ArrayList,...
  • 您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性 序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,...
  • vc++ 应用源码包_1

    热门讨论 2012-09-15 14:22:12
    vc++的音乐播放器 VC++制作3D效果的旋转文字特效 VC++注册码加密源程序(含注册机、解密机) 压缩包内有两个源码包,一个是注册机源程序,另一个是解密机的源程序,一套完整的参考实例。 VC+MapX源码含GPS跟踪...
  • vc++ 应用源码包_2

    热门讨论 2012-09-15 14:27:40
    vc++的音乐播放器 VC++制作3D效果的旋转文字特效 VC++注册码加密源程序(含注册机、解密机) 压缩包内有两个源码包,一个是注册机源程序,另一个是解密机的源程序,一套完整的参考实例。 VC+MapX源码含GPS跟踪...
  • vc++ 应用源码包_6

    热门讨论 2012-09-15 14:59:46
    vc++的音乐播放器 VC++制作3D效果的旋转文字特效 VC++注册码加密源程序(含注册机、解密机) 压缩包内有两个源码包,一个是注册机源程序,另一个是解密机的源程序,一套完整的参考实例。 VC+MapX源码含GPS跟踪...
  • vc++ 应用源码包_5

    热门讨论 2012-09-15 14:45:16
    vc++的音乐播放器 VC++制作3D效果的旋转文字特效 VC++注册码加密源程序(含注册机、解密机) 压缩包内有两个源码包,一个是注册机源程序,另一个是解密机的源程序,一套完整的参考实例。 VC+MapX源码含GPS跟踪...
  • vc++ 应用源码包_4

    热门讨论 2012-09-15 14:38:35
    vc++的音乐播放器 VC++制作3D效果的旋转文字特效 VC++注册码加密源程序(含注册机、解密机) 压缩包内有两个源码包,一个是注册机源程序,另一个是解密机的源程序,一套完整的参考实例。 VC+MapX源码含GPS跟踪...

空空如也

空空如也

1 2
收藏数 40
精华内容 16
关键字:

员工动态怎么写