• 技术文章 >后端开发 >php教程

    java EJB 加密与解密原理的一个例子_PHP教程

    2016-07-21 15:53:20原创426

    加密与解密原理的一个例子

    package lockunlock;

    import Java.awt.*;
    import java.awt.event.*;
    import java.Applet.*;
    import javax.Swing.*;
    import java.util.*;
    public class LockUnlock extends JApplet {
    private boolean isStandalone = false;
    //Get a parameter value
    public String getParameter(String key, String def) {
    return isStandalone ? System.getProperty(key, def) :
    (getParameter(key) != null ? getParameter(key) : def);
    }

    //Construct the applet
    public LockUnlock() {
    }
    //Initialize the applet
    public void init() {
    try {
    jbInit();
    }
    catch(Exception e) {
    e.printStackTrace();
    }
    }
    //Component initialization
    private void jbInit() throws Exception {
    contentPane = (JPanel) this.getContentPane();
    jLabel1.setText("String");
    jLabel1.setBounds(new Rectangle(35, 36, 57, 21));
    contentPane.setLayout(null);
    this.setSize(new Dimension(400, 300));
    jLabel2.setText("String length");
    jLabel2.setBounds(new Rectangle(29, 73, 69, 22));
    jTextField1.setText("");
    jTextField1.setBounds(new Rectangle(108, 40, 166, 17));
    jTextField2.setText("");
    jTextField2.setBounds(new Rectangle(107, 72, 56, 21));
    jButton1.setBounds(new Rectangle(30, 236, 137, 27));
    jButton1.setText("Exercise 3");
    jButton1.addActionListener(new LockUnlock_jButton1_actionAdapter(this));
    jButton2.setBounds(new Rectangle(218, 237, 131, 27));
    jButton2.setText("Exercise 4");
    jButton2.addActionListener(new LockUnlock_jButton2_actionAdapter(this));
    jTextField3.setText("");
    jTextField3.setBounds(new Rectangle(106, 105, 58, 21));
    jLabel3.setText("MoShu");
    jLabel3.setBounds(new Rectangle(36, 106, 86, 18));
    contentPane.add(jLabel1, null);
    contentPane.add(jButton2, null);
    contentPane.add(jButton1, null);
    contentPane.add(jLabel3, null);
    contentPane.add(jTextField2, null);
    contentPane.add(jLabel2, null);
    contentPane.add(jTextField3, null);
    contentPane.add(jTextField1, null);

    }
    //Get Applet information
    public String getAppletInfo() {
    return "Applet Information";
    }
    //Get parameter info
    public String[][] getParameterInfo() {
    return null;
    }
    //Main method
    public static void main(String[] args) {
    LockUnlock applet = new LockUnlock();
    applet.isStandalone = true;
    JFrame frame = new JFrame();
    //EXIT_ON_CLOSE == 3
    frame.setDefaultCloseOperation(3);
    frame.setTitle("Applet Frame");
    frame.getContentPane().add(applet, BorderLayout.CENTER);
    applet.init();
    applet.start();
    frame.setSize(400,320);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    frame.setLocation((d.width - frame.getSize().width) / 2, (d.height - frame.getSize().height) / 2);
    frame.setVisible(true);
    }

    //static initializer for setting look & feel
    static {
    try {
    //UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    //UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
    }
    catch(Exception e) {
    }
    }
    //Declare DataMember
    int index;

    //-----------------------------------------------------
    JPanel contentPane;
    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JTextField jTextField2 = new JTextField();
    JTextField jTextField1 = new JTextField();
    JButton jButton1 = new JButton();
    JButton jButton2 = new JButton();
    JTextField jTextField3 = new JTextField();
    JLabel jLabel3 = new JLabel();

    //----------------------N!------------------------------
    public int function(int N){
    if(N==1)
    return 1;
    else{
    return N*function(N-1);
    /*不是RETURN function(N-1);
    而是 N*function(N-1);*/
    }
    }
    //-----------用递归法求一个串的全排列-----------------------
    public void Arrange(String prefix,String suffix,int[] Array){
    String newPrefix,newSuffix;
    int numOfChars =suffix.length();
    if(numOfChars==1){
    Array[index]=Integer.parseInt(prefix+suffix);
    index++;
    }
    else{
    for(int i=1; i<=numOfChars;i++){
    newSuffix=suffix.substring(1,numOfChars);
    newPrefix=prefix+suffix.charAt(0);
    Arrange(newPrefix,newSuffix,Array);
    suffix=newSuffix+suffix.charAt(0);
    }
    }
    }
    //----------Arrange From the Min to the Max------------------
    /*public void RankForArrange(int[] Array){
    int bottom=Array.length-1 ;
    int temp;
    for(int i=bottom;i>0;i--){
    for(int j=0;jif(Array[j]>Array[j+1]){
    temp =Array[j];
    Array[j] =Array[j+1];
    Array[j+1]=temp;
    }
    }
    }
    }
    */
    //-------------------Find the aim number----------------------
    public int FindAim(int aim,int[] Array){
    boolean isFound=false;
    int location=0;
    int length=Array.length ;
    for(int i=0;iif(Array[i]==aim){
    location=i;
    isFound =true;
    }
    }
    if(isFound)
    return location;
    else
    System.out.println("Not Found");
    return location;
    /*在if里return 不行吗?*/
    }

    //------------------Creat String-------------------------------
    public String CreatString(int length){
    StringBuffer BufString=new StringBuffer();
    for(int i=1;i<=length;i++){
    BufString.append(i) ;
    }
    return BufString.toString();
    }
    //-----------OutPut Result--------------------
    public void OutPutResult1(){
    index = 0; //clear to 0
    String AimString, prefix;
    AimString = jTextField1.getText();
    int Length = AimString.length();
    String strLength = String.valueOf(Length);
    int Aim = Integer.parseInt(AimString);
    /* 方法.parseInt才是转换为int类型
    而不是.getInteger*/
    int[] EachArrange = new int[this.function(Length)];
    jTextField2.setText(strLength);
    prefix = ""; //Make an empty String
    if (AimString.length() > 2 &&
    AimString.length() < 9 && AimString != "") {
    Arrange(prefix, AimString, EachArrange);
    //RankForArrange(EachArrange);
    Arrays.sort(EachArrange);
    String result = String.valueOf(FindAim(Aim, EachArrange));
    jTextField3.setText(result);
    }
    else {
    System.out.println("Your String is too short");
    }
    }

    //----------Out put result 2---------------------
    public void OutPutRestlt2(){
    index=0;//Let index come back to 0
    String strLength, strMoShu,
    AimString, prefix,suffix;
    int Length, MoShu,limit;
    strLength = jTextField2.getText();
    strMoShu = jTextField3.getText();
    Length = Integer.parseInt(strLength);
    MoShu = Integer.parseInt(strMoShu);
    limit = function(Length);
    int[] EachArrange = new int[this.function(Length)];
    if (Length > 2&&Length<9&&
    strLength!=""&&strMoShu!=""
    &&MoShuprefix = "";
    suffix =CreatString(Length);
    Arrange(prefix, suffix, EachArrange);
    Arrays.sort(EachArrange);
    String strResult=String.valueOf(EachArrange[MoShu]);
    jTextField1.setText(strResult);
    }
    else
    System.out.println("Input Ouf MoShu, Try again") ;
    }

    void jButton1_actionPerformed(ActionEvent e) {
    this.OutPutResult1();
    }

    void jButton2_actionPerformed(ActionEvent e) {
    this.OutPutRestlt2();
    }
    //-----------------------------------------------------------

    }

    class LockUnlock_jButton1_actionAdapter implements java.awt.event.ActionListener {
    LockUnlock adaptee;

    LockUnlock_jButton1_actionAdapter(LockUnlock adaptee) {
    this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
    adaptee.jButton1_actionPerformed(e);
    }
    }

    class LockUnlock_jButton2_actionAdapter implements java.awt.event.ActionListener {
    LockUnlock adaptee;

    LockUnlock_jButton2_actionAdapter(LockUnlock adaptee) {
    this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
    adaptee.jButton2_actionPerformed(e);
    }
    }

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/318717.htmlTechArticle加密与解密原理的一个例子 packagelockunlock; importJava.awt.*; importjava.awt.event.*; importjava.Applet.*; importjavax.Swing.*; importjava.util.*; publicclassLockUnlocke...

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:java EJB 加密 解密 原理 一个 例子 加密 解密 原理 一个 例子 packagelockun
    上一篇:PHP5中的时间相差8小时的解决办法_PHP教程 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php实现通过JSON RPC与go通讯(附代码)• 浅析怎么使用PHP做异步爬取数据• PHP8.3要有新函数了!(json_validate函数说明)• 设计API接口时,要注意这些地方!• PHP网站常见一些安全漏洞及防御方法
    1/1

    PHP中文网