会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 133945个问题

报的异常是这样的

image.png

源码:

package com.bjsxt;

import com.bjsxt.service.UsersService;
import com.bjsxt.service.impl.UsersServiceImpl;
import org.apache.zookeeper.*;

import java.io.IOException;
import java.net.MalformedURLException;
import java.rmi.AlreadyBoundException;
import java.rmi.Naming;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;

public class serverDemo implements Watcher {
    public static void main(String[] args) throws IOException, AlreadyBoundException, KeeperException, InterruptedException {
        //实例化对外暴露的对象
        UsersService usersService = new UsersServiceImpl();
        //将对象绑定到本地的注册表中     创建一个本地的注册表监听8888端口
        LocateRegistry.createRegistry(8888);
        String url = "rmi://localhost:8888/user";
        //url为绑定标识  完成绑定
        Naming.bind(url, usersService);
        //将url放到Zookeeper的结点中
        ZooKeeper zooKeeper = new ZooKeeper("192.168.88.101:2181,192.168.88.101:2182,192.168.88.101:2183",15000,new serverDemo());
        //创建结点      并且将url放到Znode中
        zooKeeper.create("/bjsxt/service", url.getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
        System.out.println("服务发布成功!!!");
    }

    @Override
    public void process(WatchedEvent watchedEvent) {
        if (watchedEvent.getState() == Event.KeeperState.SyncConnected) {
            System.out.println("链接成功!!!");
        }
    }
}


JAVA 全系列/第十一阶段:分布式RPC调用和分布式文件存储/Zookeeper 27076楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/XML 技术(旧) 27077楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器(旧) 27081楼

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        
        <script>
            
            function checkName(){
                
                //获得input对象的值
                var uname=document.getElementById("uname").value;
                //获得span对象
                
                var span=document.getElementById("uname_span");
                
                if(uname==null||name==""){
                    
                    span.innerText="×账号不能为空";
                    
                }else {
                    
                    span.innerText="√账号合法";
                }
                
            }
            
        </script>
        
    </head>
    <body>
        
        <form action="" name="fom" id="fom">
            
            <p>                        
                账号:<input type="text" name="uname" id="uname" onblur="checkName()"/><span id="uname_span"></span>
            </p>
            
            <p>
                密码:<input type="password" name="pwd" value="123"/>    
                
            </p>
            
            <p>
            
                <input type="button" value="提交" onclick="checkName()"/>
                
            </p>
            
        </form>
        
    </body>
</html>

1.png老师,这里空账号正常显示,刷新网页输入数字后它为什么还是提示错误

JAVA 全系列/第五阶段:网页编程和设计/Javascript 语言(旧) 27082楼
JAVA 全系列/第十二阶段:消息中间件与高并发处理/RabbitMQ(旧) 27083楼

老师,我输入正确的用户和密码,这里也一直报错

image.png

java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/bjsxt?useUnicode=true&characterEncoding=utf8 
	at java.sql.DriverManager.getConnection(DriverManager.java:689)
	at java.sql.DriverManager.getConnection(DriverManager.java:247)
	at com.bjsxt.commons.JdbcUtils.getConnection(JdbcUtils.java:30)
	at com.bjsxt.dao.impl.UserLoginDaoImpl.selectUsersByUserNameAndUserPwd(UserLoginDaoImpl.java:17)
	at com.bjsxt.service.impl.UserLoginServiceImpl.userLogin(UserLoginServiceImpl.java:13)
	at com.bjsxt.web.servlet.UserLoginServlet.doPost(UserLoginServlet.java:29)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:690)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
java.lang.NullPointerException
	at com.bjsxt.dao.impl.UserLoginDaoImpl.selectUsersByUserNameAndUserPwd(UserLoginDaoImpl.java:18)
	at com.bjsxt.service.impl.UserLoginServiceImpl.userLogin(UserLoginServiceImpl.java:13)
	at com.bjsxt.web.servlet.UserLoginServlet.doPost(UserLoginServlet.java:29)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:690)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)

控制台报错如上,是不是和数据库的链接还有出现了问题?还有空指针异常?如下出现错误指向的代,请老师帮忙看一下,谢谢!

jdbc.driver=com.mysql.jdbc.Driver 
jdbc.url=jdbc:mysql://localhost:3306/bjsxt?useUnicode=true&characterEncoding=utf8 
jdbc.username=root 
jdbc.password=root
package com.bjsxt.commons;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.ResourceBundle;

public class JdbcUtils {
    private static String driver;
    private static String url;
    private static String username;
    private static String password;
    static {
        try{
            ResourceBundle bundle = ResourceBundle.getBundle("db");
            driver = bundle.getString("jdbc.driver");
            url = bundle.getString("jdbc.url");
            username = bundle.getString("jdbc.username");
            password = bundle.getString("jdbc.password");
            Class.forName(driver);
        }catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    //获取连接方法
    public static Connection getConnection(){
        Connection conn = null;
        try{
            conn = DriverManager.getConnection(url,username,password);
        }catch(Exception e){
            e.printStackTrace();
        }
        return conn;
    }

    //关闭连接
    public  static void closeConnection (Connection conn){
        try{
            conn.close();
        }catch (SQLException e){
            e.printStackTrace();
        }
    }
}
package com.bjsxt.dao.impl;

import com.bjsxt.commons.JdbcUtils;
import com.bjsxt.dao.UserLoginDao;
import com.bjsxt.pojo.Users;

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

public class UserLoginDaoImpl implements UserLoginDao {
    @Override
    public Users selectUsersByUserNameAndUserPwd(String username, String userpwd) {
        Users user = null;
        Connection conn = null;
        try{
            conn = JdbcUtils.getConnection();
            PreparedStatement ps = conn.prepareStatement("select * from users where username = ? and userpwd = ?");
            ps.setString(1,username);
            ps.setString(2,userpwd);
            ResultSet resultSet = ps.executeQuery();
            while(resultSet.next()){
                user = new Users();
                user.setUsersex(resultSet.getString("usersex"));
                user.setUserpwd(resultSet.getString("userpwd"));
                user.setUsername(resultSet.getString("username"));
                user.setUserid(resultSet.getInt("userid"));
                user.setPhonenumber(resultSet.getString("phonenumber"));
                user.setQqnumber(resultSet.getString("qqnumber"));
            }

        }catch (Exception e){
            e.printStackTrace();
        }finally {

        }
        return user;
    }
}


JAVA 全系列/第六阶段:JavaWeb开发/Web实战案例 27084楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/多线程技术(旧) 27085楼

XML文件.zip

老师帮帮忙,看了一下午,错误也没有解决了

image.png

JAVA 全系列/第二阶段:JAVA 基础深化和提高/XML 技术(旧) 27086楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/多线程技术(旧) 27087楼
JAVA 全系列/第十一阶段:智能家居项目(旧)/至尊智能家居第一天 27089楼

# 图片识别
import base64
from PIL import Image
from aip import AipFace
from PIL import Image, ImageDraw, ImageFont
APP_ID = '23157414'
API_KEY = 'WhceDbN1GR7OpsYGguhvpgiu'
SECRET_KEY = 'NA6N6UxpsfSlQ6GgnAMuf9jvZ1UtTZHX'
client = AipFace(APP_ID, API_KEY, SECRET_KEY)

filename = './图片/1.jpg'
fo = open(filename, 'rb')
image = fo.read()
fo.close()
image = str(base64.b64encode(image), 'utf-8')
image_type = 'BASE64'

options = {}
options['face_field'] = 'age,gender,beauty,glasses'
options['max_face_num'] = 10
options['face_type'] = 'LIVE'
result = client.detect(image, image_type, options)
print(result)
img = Image.open(filename)
img.show()

for face in result['result']['face_list']:
    if face['gender']['type'] == 'male':
        gender = '男'
    else:
        gender = '女'
    age = face['age']
    beauty = face['beauty']
    if face['glasses']['type'] == 'none':
        glasses = '没戴眼镜'
    else:
        glasses = '戴眼镜'
    print('性别:' + gender)
    print('年龄:' + str(age))
    print('颜值:' + str(beauty))
    print(glasses + '\n')

img =Image.open(filename)
draw = ImageDraw.Draw(img)
ttfont = ImageFont.truetype('C:\Windows\Fonts\Deng.ttf', 12)

for face in result['result']['face_list']:
    if face['gender']['type'] == 'male':
        gender = '男'
    else:
        gender = '女'
    age = face['age']
    beauty = face['beauty']
    if face['glasses']['type'] == 'none':
        glasses = '没戴眼镜'
    else:
        glasses = '戴眼镜'

    x1 = face['location']['left']
    y1 = face['location']['top']
    x2 = x1+face['location']['width']
    y2 = y1+face['location']['height']
    draw.rectangle((x1, y1, x2, y2), outline='blue')

    x = x2+5
    draw.text([x, y1], '性别:'+gender, 'white', font=ttfont)
    draw.text([x, y1+15], '年龄'+str(age), 'white', font=ttfont)
    draw.text([x, y1+30], '颜值'+str(beauty), 'white', font=ttfont)
    draw.text([x, y1+45], glasses, 'white', font=ttfont)
img.show()

老师,我想在这个代码里加一个就是当识别的图片中没有人物是在图片中显示‘’此图片中没有人物‘’这样的代码,老师你帮我看看怎么加




Python 全系列/第一阶段:AI驱动的Python编程/面向对象 27090楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637