一、网站系统开发需要掌握的技术:

1. 网页上要显示内容,需要学学HTML,比如这个页面,有文字,有图片。

2.光有文字还不行,还要考虑不同的颜色,布局,排版,如图做出这样页面效果,要学学基本的CSS

3. 有一些交互,比如修改了代码可以实时看到效果,得掌握Javascript

4. 现在网站有1000多张页面,不可能做1000张html呀,所以这些都需要维护在数据库里面,那就学一个简单的MySQL

5. 现在一共有55张表。。。。 怎么维护他们之间的关系~ 彼此如何依赖,外键如何关联,这个需要学习表关系的相关知识

6. 有了数据库,也有了表,那么如何从这些表里取数据呢? 我用的是JAVA技术栈,那么就需要用到JDBC

7. 为了使用JDBC不是需要Java基础吗? 为了仅仅满足JDBC的运行,需要如下JAVA基础:

面向对象,变量 操作符 控制流程,数字与字符串,异常处理,集合

8. 这样JDBC就可以取出数据了,那么取出来之后怎么显示在HTML上呢? 需要用到JSP

9. 为了JSP可以运行,需要一个Servlet容器,TOMCAT,简单用用就可以了

10. 可是TOMCAT总不能在自己机器上跑嘛,要放在公网上,运行,其他人才看得到呀,所以需要掌握如何在LINUX里部署Tomcat


11. 那么挂在公网上的Linux自己怎么弄呢? 我也弄不来,我是在阿里云租的LINUX云服务器

12. 随着网站提供的功能越来越多,光用JSP开发太慢了,而且难以维护,这个时候就用到了Struts 加快开发效率

13. JDBC也有点难以维护了,那么就换成了Hibernate

14. 为了让Struts和Hibernate更好的整合在一起,那还得学学Spring以及这3个的整合

15. Struts常常有漏洞产生,所以还得时常打补丁

16. 为了更好的讲解知识点,录了教学视频,所以还得会录屏软件。。。

17. 这些视频放在youku不太好,会有广告,放在云盘也不好,会被莫名其妙举报而关闭,所以还是放在自己网站吧。 那么为了播放,还的学会html5的播放方式

18. 随着访问的人数增多,看视频的人有个3,4个人同时看的时候,视频播放就卡成狗了,所以为了播放顺利,得把视频放在OSS上面去

19. 可是视频也多呢,一个一个得手动上传多麻烦,那就得调用阿里云的API,用Java帮你自动上传

20.还有些和开发技术无关的,也是需要掌握的,比如域名,要自己去选购一个,也是在阿里云买的, 以前叫域名里包含java这个商标,害怕被oracle拿回去,就改了。

21. 光有域名还不行,当服务器是在国内的时候,是需要备案的

课堂测试的源程序代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package com.jaovo.msg.dao;
import java.util.List;
import com.jaovo.msg.model.User;
 
 
public interface IUserDao {
    public void add(User user) ;
    public void delete(int id) ;
    public void update(User user) ;
    public User load(int id) ;
    public int load(String username,String password) ;
    public List<User> load();
 
}

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
package com.jaovo.msg.dao;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
 
 
import com.jaovo.msg.Util.UserException;
 
import com.jaovo.msg.Util.DBUtil;
import com.jaovo.msg.model.User;
 
public class UserDaoImpl implements IUserDao{
 
    @Override
    public void add(User user) {
        Connection connection=DBUtil.getConnection();
        String sql="select count(*) from t_user where username = ?";
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        try {
             preparedStatement=connection.prepareStatement(sql);
             preparedStatement.setString(1, user.getUsername());
             resultSet=preparedStatement.executeQuery();
            while(resultSet.next()) {
                if(resultSet.getInt(1)>0) {
                    throw new UserException("登陆成功") ;
                }
                 
            }
             
            sql="insert into t_user(username,password) value  (?,?)";
            preparedStatement=connection.prepareStatement(sql);
            preparedStatement.setString(1, user.getUsername());
            preparedStatement.setString(2, user.getPassword());
            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(resultSet);
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
    }
 
    @Override
    public void delete(int id) {
        Connection connection=DBUtil.getConnection();
        String sql="delete from t_user where id = ?";
        PreparedStatement preparedStatement=null;
        try {
            preparedStatement=connection.prepareStatement(sql);
            preparedStatement.setInt(1, id);
            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
         
    }
 
    @Override
    public void update(User user) {
        // TODO Auto-generated method stub
        Connection connection=DBUtil.getConnection();
        String sql="update t_user set password = ? where id = ?";
         
        PreparedStatement preparedStatement=null;
        try {
            preparedStatement=connection.prepareStatement(sql);
            preparedStatement.setString(1, user.getPassword());
            preparedStatement.setInt(2, user.getId());
            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
         
    }
 
    @Override
    public User load(int id) {
        Connection connection=DBUtil.getConnection();
        String sql="select * from t_user where id = ?";
         
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        User user=null;
        try {
            preparedStatement=connection.prepareStatement(sql);
            preparedStatement.setInt(1,id);
            resultSet=preparedStatement.executeQuery();
            while(resultSet.next()) {
                user=new User();
                user.setId(id);
                user.setUsername(resultSet.getString("username"));
                user.setUsername(resultSet.getString("password"));
                 
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(resultSet);
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
             
        return user;
    }
 
    @Override
    public int load(String username,String password) {
        /*Connection connection=DBUtil.getConnection();
        String sql="select * from t_user where username = ?";
        Statement statement=null;
        ResultSet resultSet=null;
        int boo=1;
        try {
            statement=connection.createStatement();
             
            resultSet=preparedStatement.executeQuery();
            while(resultSet.next()) {
                if(password.equals(resultSet.getString(2))) {
                boo=1;
                }
                else boo=2;
            }
             
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(resultSet);
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
             
        return boo;*/
        int n=0;
        try {
            Class.forName("com.mysql.jdbc.Driver");
            try {
                //String string="ji";
                String url="select * from t_user where username = ? ";
                Connection connection=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/jaovo_msg","root", "root");
                PreparedStatement preparedStatement=connection.prepareStatement(url);
                preparedStatement.setString(1, username);
                ResultSet resultSet=preparedStatement.executeQuery();
                 
                //String string="hava";
                while(resultSet.next()) {
                    //System.out.println(resultSet.getInt(1));
                    //System.out.println(resultSet.getString(2));
                    if(username.equals(resultSet.getString(2))&&password.equals(resultSet.getString(3))) n=1;
                    else n=2;
                }
                resultSet.close();
                preparedStatement.close();
                connection.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
                 
        }
        return n;
    }
     
 
    @Override
    public List<User> load() {
        Connection connection=DBUtil.getConnection();
        String sql="select * from t_user where id = ?";
         
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        List<User> users=new ArrayList<User>();
        User user=null;
        try {
            preparedStatement=connection.prepareStatement(sql);
            resultSet=preparedStatement.executeQuery();
            while(resultSet.next()) {
                user=new User();
                user.setId(resultSet.getInt("id"));
                user.setUsername(resultSet.getString("username"));
                user.setPassword(resultSet.getString("password"));
                users.add(user);
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            DBUtil.close(resultSet);
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
        return users;
    }
     
 
}

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package com.jaovo.msg.model;
 
public class User {
    private int id;
    private String username;
    private String password;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
     
 
}

  

复制代码
package com.jaovo.msg.Util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DBUtil {
    public static Connection getConnection() {
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        String user = "root";
        String password="root";
        String url="jdbc:mysql://localhost:3306/jaovo_msg";
        Connection connection=null;
        try {
            connection=DriverManager.getConnection(url, user, password);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return connection;
    }
    public static void close(Connection connection) {
        try {
            if(connection!=null) {
            connection.close();
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(PreparedStatement preparedStatement) {
        try {
            if(preparedStatement!=null) {
            preparedStatement.close();
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(ResultSet resultSet) {
        try {
            if(resultSet!=null) {
            resultSet.close();
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
 
}
复制代码
复制代码
package com.jaovo.msg.Util;

public class UserException extends RuntimeException{

    public UserException() {
        super();
        // TODO Auto-generated constructor stub
    }

    public UserException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
        super(message, cause, enableSuppression, writableStackTrace);
        // TODO Auto-generated constructor stub
    }

    public UserException(String message, Throwable cause) {
        super(message, cause);
        // TODO Auto-generated constructor stub
    }

    public UserException(String message) {
        super(message);
        // TODO Auto-generated constructor stub
    }

    public UserException(Throwable cause) {
        super(cause);
        // TODO Auto-generated constructor stub
    }
    

}
复制代码

课堂测试未按时完成原因:

数据库的链接不熟,增删改查不熟,jsp页面也不熟。

列出你对这门课的希望和自己的目标,并具体列出你计划每周花多少时间在这门课上:

我希望我能掌握开发网站的技术,计划花四分之一的时间。